缑丽莎,徐 岩
(兰州交通大学 电子与信息工程学院, 兰州 730070)
终端设备的剧增将导致移动流量和能量消耗不断上升。近几年来,基于邻近性的应用程序是此类数据激增的主要来源之一。 设备到设备(Device to Device,D2D)通信是指相邻的两个用户无需通过基站直接发送信号[1],将全双工传输[2]与D2D通信相结合,可提高频谱效率和终端用户体验,减少通信延迟,并提供高速率数据的短程传输[3-4]。
目前,国内外研究热点基本围绕D2D通信网络的资源配置和干扰控制[5-6],也有不少文献研究D2D通信网络中的能量消耗问题。文献[7]将子载波分配和功率分配联合优化,在满足所有用户速率的要求下使能量消耗最小;文献[8]提出了一种改进的遗传算法,在保证D2D通信传输速率的同时使能耗最小化;文献[9]构造了非合作博弈模型,通过资源分配实现三层网络中D2D通信对的能效最大化;文献[10]提出了一种D2D通信对访问链路控制和资源分配方案,采用逆聚块近似算法求解;文献[11]构造Stackelberg博弈效用函数,通过调整发射功率使每个用户的效用最大化;文献[12]推导出了实现场景的能量效用函数,提出了贪心基站休眠的节能算法来优化能耗。
目前多数算法复杂度高,既不能有效满足用户现代化的通信需求,也不能充分达到能效优化的目的。故本文采用一种分解的方法研究全双工D2D通信链路能效优化问题。
考虑由基站、c个蜂窝用户和d个全双工D2D用户对组成的全双工D2D用户对复用单小区蜂窝网络上行链路资源的传输场景,基站在小区中心,如图1所示。每个蜂窝用户拥有正交的链路资源,防止各个链路之间发生同信道干扰,每个链路资源占用WMHz带宽。K={1,…,k}为k个蜂窝用户链路资源的集合,C={1,…,c}为蜂窝用户链路集合,D={1,…,d}为全双工D2D用户对链路集合,每个全双工D2D用户对包括1个发射端和1个接收端。假设蜂窝用户发射功率恒定,每个蜂窝链路资源块只能被一个全双工D2D用户对复用,且每个全双工D2D用户对只能复用一个蜂窝链路资源块。此时基站会受到来自全双工D2D用户对的干扰,并且全双工D2D用户D1和D2也会受到来自蜂窝用户的干扰,同时全双工D2D用户对会产生自干扰。
图1 系统模型
式中,η(η1、η2)为自干扰消除因子。当η=0时,自干扰被彻底消除,当η=1时,自干扰完全没有被消除,0≤η≤1。
由此可以推导出D1到D2和D2到D1的传输速率分别为
于是,全双工D2D通信链路总的能量效率为
联合功率控制和链路资源分配的能效分析是一个混合整数非线性规划问题,此类问题在文献[13]中已被证明是非确定性多项式问题,故将能效优化问题转换为两个独立的优化子问题可以降低求解的复杂度。在第1个子问题中,以全双工D2D通信链路的能量效率最大化为目标,解决在给定资源上全双工D2D通信链路D1和D2的功率分配问题;对于第2个子问题,研究如何在第1个子问题假设下为多个全双工D2D通信链路分配蜂窝链路资源。
图2所示为由约束条件组成的3个限制区域,最佳发射功率分配的解决方案有如下3种情况:
图2 发射功率限制区域
由于约束能效优化问题是非线性的,并且目标函数和约束条件都是连续两次可微,因此可以通过有效的迭代方法对二次规划算法进行求解。具体可以通过Matlab软件优化工具箱中的fmincon函数求解最优发射功率。上述已证明最佳发射功率分配方案之一是位于可行区域的边界上,因此将全双工D2D通信链路的发射功率初始点设置为最大值,以提高收敛速度。
(1) 解空间和初始化
(2) 评估
(3) 搜索运算符和扰动
自适应TS算法搜索分配链路资源时包括全双工D2D用户对已分配的链路资源,以便提高每次迭代后链路资源分配的质量。假设链路资源的整体分配矩阵Sh×l为当前解,h为占用第l个链路资源的全双工D2D用户,l为被第h个全双工D2D用户占用的链路资源,交换运算符swap为本地搜索运算符,通过单独交换随机两行以创建新的邻域解来分配新的链路资源。
自适应TS算法中的扰动机制是把搜索过程引向解空间未探索的邻域从而全局寻找最优解。通过强制选择引导搜索的移动方向来执行微调扰动机制可以产生有希望的解空间。当交换搜索无法超出局部最优解且在多次迭代后仍不能改善最优解时,可以执行扰动。这种微调扰动机制必须设置巧妙,以引导新的搜索区域,生成不同的局部最优解,并避免随机重新搜索。
本文全双工D2D用户链路资源分配扰动算子的目标是通过随机改变全双工D2D用户链路资源分配矩阵的两行,使最优解的搜索范围多样化。故本文将随机反转全双工D2D用户链路资源分配矩阵中的j1和j2行,实际上这里不仅是j1和j2行被交换,而且j1和j2行之间的行也被交换,但j1和j2行之间的距离必须大于2,以防止生成本地运算符之前的解。对扰动算子中固定参数的设置要足够小以确保扰动机制避免随机重启行为,同时也要足够大以确保不会消除局部搜索的结果。
(4) 禁忌列表
禁忌列表定义为搜索历史记录,以维护每次迭代中最后访问的解决方案。在每次迭代中若执行了最佳交换,禁忌列表就会更新,将新的解决方案添加到禁忌列表中,并且此移动在有限的迭代次数中不会受到影响。通过实验调试将禁忌列表的长度确定为nswap/2,n为迭代次数,该长度随着邻域大小的增加而线性增长。
(5) 自适应TS算法
本文提出的自适应TS算法流程描述如下:TS从Sh×l的初始配置开始,寻找搜索空间最佳的链路资源分配,即在每次迭代中,TS执行nswap,移动以提高目标函数值。经过两次连续的交换操作后,如果新的链路资源分配解决方案导致更高的全双工D2D链路能量效率,则本地搜索将使用新获得的解决方案继续搜索,以找到在当前迭代中返回最高能量效率的最佳交换移动,具有最高目标函数的解决方案会在列表中更新;如果在给定的迭代次数后解决方案仍未得到改善,则停止局部搜索,并且扰动在搜索空间中进行长距离跳跃,这时从扰动的修改解开始,对于给定的迭代次数,将继续执行以上过程达到全局最优。
将本文所提自适应TS算法与其他3种算法对比验证本文所提算法性能,其他3种算法分别为遗传链路分配的最佳功率算法、无功率控制的自适应TS算法和随机链路分配的最佳功率控制算法。仿真参数设置如表1所示。
表1 参数设置
图3所示为4种不同算法的收敛性与全双工D2D通信链路能效变化关系曲线。由图可知,本文所提自适应TS算法在第18次迭代达到收敛,而遗传链路分配的最佳功率算法在第22次迭代达到收敛,无功率控制的自适应TS算法在第24次迭代达到收敛,随机链路分配的最佳功率控制算法在第28次迭代达到收敛,由此说明本文所提算法的可收敛性。本文所提算法相对于其他3种算法,全双工D2D通信链路能量效率最优,与对遗传链路分配的最佳功率算法相比,本文所提算法提高了约1.7%的性能;与无功率控制的自适应TS链路资源分配算法相比,本文所提算法提高了约3.7%的性能;与随机链路分配的最佳功率控制算法相比,本文所提算法提高了约9.6%的性能,这是因为本文所提算法采用了不同的移动算子,且由图可知,本文所提算法中在迭代到第14次时,移动算子显示出有效扰动的结果。此外,相比于无功率控制的自适应TS算法,本文所提算法性能更好,由此得出通过功率控制可以改善全双工D2D通信链路能量效率,获取更高的能效。
图3 不同算法下全双工D2D链路能效收敛性比较
图4所示为4种不同算法下全双工D2D通信链路能效随距离的变化曲线。在4种算法中,全双工D2D用户共享蜂窝用户链路资源,随着全双工D2D链路距离的增加,信道链路衰减逐渐增大,全双工D2D用户的SINR减少,为了满足需求,全双工D2D用户会提高发射功率,导致系统网络内干扰增大,影响全双工D2D通信链路的能效,使其值逐渐下降。本文所提算法在4种算法中具有最佳的性能,这意味着利用本文所提算法来解决提出的优化问题是有效的。如果全双工D2D对的传输功率是最佳发射功率,即使使用了有效的链路资源分配,由于同信道干扰的增长,性能也会下降。
图4 不同算法下全双工D2D通信链路能效随距离的变化曲线
图5所示为4种不同算法下全双工D2D通信链路能效随QoS变化的曲线。由图可知,当全双工D2D链路QoS要求变大时,全双工D2D通信链路能效略有下降,这是因为,全双工D2D链路需要较高的SINR和较小的传输功率,并且随着QoS要求的增加,全双工D2D用户需要增加其发射功率以满足最低的QoS。因此,对于低QoS要求,全双工D2D通信链路能效几乎保持不变。然而,对于高QoS要求,全双工D2D通信链路能效降低,这是因为全双工D2D用户的发射功率受限于最大值。
图5 不同算法下全双工D2D通信链路能效随QoS变化的曲线
图6所示为4种不同算法下全双工D2D通信链路能效随最大发射功率变化的曲线。由图可知,随着发射功率的增大,全双工D2D通信链路能效也略微增大。这是因为全双工D2D链路距离较短,信道链路的增益较高,因此,全双工D2D用户在功率分配阶段降低了传输功率,以防止同信道干扰,对全双工D2D通信链路的能效影响不是很大。但随着发射功率的增加,增大到接近发射功率的阈值时,系统内干扰也会随之增大,影响全双工D2D通信链路能效,使之降低。但本文所提自适应TS算法相比其他3种算法有一定的优越性。
图6 不同算法下全双工D2D通信链路能效随最大发射功率变化的曲线
图7所示为不同自干扰消除值下本文所提算法在半双工和全双工模式下D2D通信链路的能效对比曲线。由图可知,无论是否在本文链路资源分配算法的基础上加入功率控制,半双工模式下的D2D通信链路的能效趋于常数,这是因为,自干扰消除值的大小与半双工模式下的D2D通信链路的能效无关。相对于无功率控制的半双工D2D通信链路的能效,对D2D用户进行功率控制可以增加D2D通信链路的能效。且当η≤91 dB时,半双工模式下的本文所提算法D2D通信链路的能效反而更高,这是由于全双工D2D通信之间的干扰相比半双工干扰更大,而D2D通信链路的能效与用户之间的干扰成反相关,因此,全双工模式下本文所提算法D2D通信链路的能效更低。但是当η≥91 dB时,甚至η=100 dB时,全双工模式下本文所提算法的D2D通信链路的能效要明显高于半双工模式。
图7 不同自干扰消除值下的通信链路能效对比曲线
针对全双工D2D通信链路场景,研究了在最低要求的全双工D2D用户QoS保证和功率阈值的条件下,通过给全双工D2D用户分配蜂窝用户链路资源最大化全双工D2D通信链路的能效问题,该问题是一个复杂的混合组合非凸优化问题。为了使问题易于处理,本文将原问题分解为两个子问题,即功率控制和资源分配问题。在第1个子问题中分析了如何求取最优发射功率解,以解决全双工D2D通信用户的最优发射功率;在第2个子问题中通过应用时间复杂度降低的自适应TS算法来解决链路资源分配问题。将提出的算法与其他3种算法进行了比较,仿真结果表明,所提算法优于其他对比算法,因其集中于通过在每次迭代中对一个解进行局部搜索和通过执行防止陷入局部最小值的扰动机制来寻找最终解决方案。