本发明涉及一种用于瑞利信道下的d2d蜂窝通信系统吞吐量优化方法。
背景技术:
随着智能设备的普及,丰富多彩的无线业务随之走进人们的日常生活中,从而导致了移动数据流量急剧增大。在这种情况下,频谱资源匮乏问题就变得愈来愈突出。d2d通信技术的出现,能够有效地缓解日益增长的数据流量与蜂窝网有限频谱资源的矛盾问题。
在d2d蜂窝通信系统中,d2d用户通过复用蜂窝用户的频谱资源来提高频谱效率和网络容量,但这同时也带来了较大的干扰。因此,要想使系统吞吐量得到最大限度地提升,取决于如何进行合理地干扰管理。通过对资源分配策略进行优化,能够减小系统中的干扰,从而提升系统吞吐量。
技术实现要素:
本发明的目的在于提供一种用于瑞利信道下的d2d蜂窝通信系统吞吐量优化方法,以实现系统的吞吐量最大化。
为达成上述技术目的,本发明的技术方法如下:
一种用于瑞利信道下的d2d蜂窝通信系统吞吐量优化方法,该优化方法应用的系统中d2d用户与蜂窝用户为多对一的关系,即蜂窝用户的频谱资源可以同时被多个d2d用户复用,而d2d用户只能复用一个蜂窝用户的频谱资源;该方法包括以下步骤:
步骤1、将系统的吞吐量用所有用户的平均传输速率求和公式来表示,则系统吞吐量可以表示为:
受限于
式(1)中,蜂窝用户数表示为c={ci,1≤i≤|c},d2d用户数表示为d={dj,1≤j≤|d},
公式(2)和(3)中,
当给定一组指示符
步骤2、优化资源分配,其具体分为三步:
步骤2.1:随机生成一组资源分配指示符
令连续失败次数b=0,同时设置连续失败次数阈值t(t>0),联盟li中的蜂窝用户ci和其共享的d2d用户对的总速率
步骤2.1.1:使蜂窝用户ci的平均传输速率
步骤2.1.2:使d2d用户对dj的平均传输速率
得到系统初始最大总速率
步骤2.2:如果b=t,算法结束并输出
步骤2.3,其包括以下步骤:
步骤2.3.1:在一个联盟中li随机地选择一个d2d用户对dj;
步骤2.3.2:随机地选择一个联盟li'∈lcur\{li};
步骤2.3.3:联盟li中的蜂窝用户ci和其共享的d2d用户对的总速率
步骤2.3.3.1:使蜂窝用户ci的平均传输速率
步骤2.3.3.2:使d2d用户对dj的平均传输速率
若
步骤2.3.4:将d2d用户对dj从联盟li转移到联盟li'中去;
步骤2.3.5:按照如下方式更新当前联盟分区(lcur\{li,li'})∪{li\{dj},li'∪{dj}}→lcur;同时令
采用上述方法后,本发明的积极效果在于:
在瑞利信道下,d2d蜂窝通信系统的吞吐量不仅取决于资源分配策略,还取决于接收端处的信干扰比(sinr)阈值,因此,在这两者之间存在着一个有益的平衡,通过对资源分配策略和sinr阈值进行交替优化,可以达到这个平衡,这个平衡能够保证系统的吞吐量最大化。
d2d蜂窝通信系统的吞吐量在本发明中被量化为所有用户的平均传输速率求和问题,当系统中所有用户的传输速率都达到最大时,系统的吞吐量也就达到最大,利用总速率最大值量化吞吐量的最大值。本发明所提出的优化方法通过交替对资源分配策略和sinr阈值进行优化,可以取得两者之间的一个有益平衡,使系统的吞吐量最大化,并且通过实验证明,与传统的吞吐量优化方法相比,通过本发明的吞吐量优化方法可以提升13%-173%的吞吐量。
附图说明
图1为本发明优化方法应用的d2d蜂窝通信系统结构图;
图2为本发明优化方法流程图。
具体实施方式
如图2所示,本发明一种用于瑞利信道下的d2d蜂窝通信系统吞吐量优化方法,该优化方法应用的系统中d2d用户与蜂窝用户为多对一的关系,即蜂窝用户的频谱资源可以同时被多个d2d用户复用,而d2d用户只能复用一个蜂窝用户的频谱资源,如图1所示;该方法包括以下步骤:
步骤1、将系统的吞吐量用所有用户的平均传输速率求和公式来表示,则系统吞吐量可以表示为:
受限于
式(1)中,蜂窝用户数表示为c={ci,1≤i≤|c|},d2d用户数表示为d={dj,1≤j≤|d|},
公式(2)和(3)中,
当给定一组指示符
步骤2、优化资源分配,其具体分为三步:
步骤2.1:随机生成一组资源分配指示符
令连续失败次数b=0,同时设置连续失败次数阈值t(t>0),联盟li中的蜂窝用户ci和其共享的d2d用户对的总速率
步骤2.1.1:使蜂窝用户ci的平均传输速率
步骤2.1.2:使d2d用户对dj的平均传输速率
得到系统初始最大总速率
步骤2.2:如果b=t,算法结束并输出
步骤2.3,其包括以下步骤:
步骤2.3.1:在一个联盟中li随机地选择一个d2d用户对dj;
步骤2.3.2:随机地选择一个联盟li'∈lcur\{li};
步骤2.3.3:联盟li中的蜂窝用户ci和其共享的d2d用户对的总速率
步骤2.3.3.1:使蜂窝用户ci的平均传输速率
步骤2.3.3.2:使d2d用户对dj的平均传输速率
若
步骤2.3.4:将d2d用户对dj从联盟li转移到联盟li'中去;
步骤2.3.5:按照如下方式更新当前联盟分区(lcur\{li,li'})∪{li\{dj},li'∪{dj}}→lcur;同时令