一种基于麻雀搜索算法的NOMA-VLC功率分配方法
文献发布时间:2024-04-18 20:02:18
技术领域
本发明属于通信技术领域,主要涉及非正交多址可见光通信系统功率分配,具体是一种基于麻雀搜索算法的NOMA-VLC功率分配方法。
背景技术
NOMA系统的性能评估主要关注系统的总吞吐量、能量效率和用户公平性这三个指标。其中,功率分配算法对系统在这三个指标上的表现有着重要的影响。目前已有的NOMA下行链路功率分配算法大多是在保证一定用户数据速率的前提下,以最大化系统吞吐量或能量效率为目标进行功率分配。尽管这些方法在保障用户公平性方面做出了一定努力,但文献中的结果仅限于算法在系统总吞吐量或能量效率上的比较,并没有具体的量化指标来衡量用户公平性。因此,无法直观地评估算法在系统总吞吐量和用户公平性之间的平衡。
目前针对NOMA-VLC系统中的多用户功率分配的研究已取得一些进展但仍存在一些问题,例如:
《NOMA下行链路中用户分组与功率分配算法的研究与优化》,北京邮电大学,谢学骁。该方案中,没有采用和速率的对数效用函数作为目标函数,无法取得系统和速率与用户公平性之间的平衡。并且,其对约束条件的设置不充分,没有考虑LED器件的发光能力以及保护人眼安全的需要,也没有考虑到总分配功率受到最大发射功率的限制。
《Optimization of Non-Orthogonal Multiple Access Based Visible LightCommunication Systems》,IEEE Communication Letters,Zanib Tahira et al。该方案中,关于NOMA系统性能的讨论集中在系统的和速率,没有考虑到用户公平性。并且其仅讨论了两用户的功率分配,能否适用于多用户功率分配是存疑的。
因此,现有NOMA-VLC系统中的多用户功率分配方法有以下缺点:(1)现有技术无法在系统的总吞吐量以及用户公平性之间取得平衡。(2)现有技术对约束条件的设置考虑不全面。(3)没有验证算法是否适用于多用户功率分配。以上缺点降低了系统和速率和用户公平性,因此,提出一种能同时保证用户公平性与系统和速率的功率分配方法是非常必要的。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种基于麻雀搜索算法的NOMA-VLC功率分配方法,以期解决现有功率分配算法无法同时保证用户公平性与系统和速率的问题,并支持任意场景相关参数、任意发射/接收机相关参数、任意用户数量。
为了实现上述目的,本发明采用的技术方案是:
第一方面,提供一种基于麻雀搜索算法的NOMA-VLC功率分配方法,包括以下步骤:
步骤1,确定发射机和用户的接收PD相关参数;
步骤2,以视距链路为仿真的链路类型;
步骤3,建立基于用户公平性最大化系统和速率的数学模型,确定模型中相关参数;
步骤4,确定目标函数以及约束条件,对用户的速率使用对数效用函数并求和作为目标函数;
步骤5,以所述目标函数为麻雀搜索算法的适应度函数,确定麻雀搜索算法的参数,包括:最大迭代次数、麻雀总数、发现者、追随者和警觉者的比例、当前迭代次数以及所有麻雀的位置,各个麻雀的位置表示NOMA系统中各个用户的分配功率;
步骤6,通过麻雀搜索算法找到最优麻雀的位置以及适应度值,进而得到最优的功率分配结果和最大的系统和速率。
第二方面,提供一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行所述基于麻雀搜索算法的NOMA-VLC功率分配方法。
第三方面,提供一种包含指令的计算机程序产品,其特征在于,当所述指令在计算机上运行时,使得所述基于麻雀搜索算法的NOMA-VLC功率分配方法。
目前已有的NOMA下行链路功率分配算法大多是在保证一定用户数据速率的前提下,以最大化系统吞吐量或能量效率为目标进行功率分配。尽管这些方法在保障用户公平性方面做出了一定努力,但文献中的结果仅限于算法在系统总吞吐量或能量效率上的比较,并没有具体的量化指标来衡量用户公平性,无法在系统的总吞吐量以及用户公平性之间取得平衡,且对约束条件的设置考虑不全面,即没有考虑LED器件的发光能力以及保护人眼安全的需要,也没有考虑到总分配功率受到最大发射功率的限制。由此可见,目前NOMA-VLC功率分配方法不能同时保证用户公平性与系统和速率,这会对NOMA-VLC多用户功率分配相关研究带来干扰。
本发明解决了现有功率分配算法无法同时保证用户公平性与系统和速率的问题,与现有技术相比具有如下优点:
(1)实现系统的总吞吐量以及用户公平性之间的平衡:本发明基于具有单个发射机和多个用户的NOMA-VLC下行链路系统,为了保证用户公平性,对用户的速率使用对数效用函数并求和作为目标函数,建立了基于用户公平性最大化系统和速率的数学模型。
(2)更准确地获得VLC系统中NOMA的最优功率分配:本发明提出了一种基于麻雀搜索算法的NOMA-VLC功率分配策略。麻雀搜索算法在搜索精度、收敛速度和稳定性等方面具有良好的表现,能有效获得VLC系统中NOMA的最优功率分配。
(3)具有工程应用价值:本发明充分考虑功率分配优化问题的目标函数和约束条件,支持任意场景相关参数、任意发射/接收机相关参数、任意用户数量。仿真结果与分析对多用户功率分配具有指导意义。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1为本发明的流程框图。
图2为本发明的系统模型图。
图3为SIC原理图。
图4为麻雀搜索算法迭代流程图。
图5为用户数量与和速率的关系图。
图6为用户数量与Jain公平指数的关系图。
图7为不同用户数量下发射功率与和速率的关系。其中(a)~(f)分别表示用户数量为2,3,4,5,6,7。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施方式进一步详细说明。
实施例1
NOMA系统的性能评估主要关注系统的总吞吐量、能量效率和用户公平性这三个指标。其中,功率分配算法对系统在这三个指标上的表现有着重要的影响。目前已有的NOMA下行链路功率分配算法大多是在保证一定用户数据速率的前提下,以最大化系统吞吐量或能量效率为目标进行功率分配。尽管这些方法在保障用户公平性方面做出了一定努力,但现有技术中的结果仅限于算法在系统总吞吐量或能量效率上的比较,并没有具体的量化指标来衡量用户公平性。因此,无法直观地评估算法在系统总吞吐量和用户公平性之间的平衡。
为了解决现有技术中无法同时保证用户公平性与系统和速率的问题,建立了基于用户公平性最大化系统和速率的数学模型,考虑到VLC信号的非负性和人眼的安全性设置了光功率约束条件,提出了一种基于麻雀搜索算法的NOMA-VLC功率分配方法,参见图1,图1为本发明的流程框图,包括有以下步骤:
步骤1,确定发射机(在本发明NOMA系统中,一般指LED发射机)和用户的接收PD相关参数:以场景的左下角为原点,宽度方向为X轴,长度方向为Y轴,高度方向为Z轴,建立直角坐标系,系统模型如图2所示。具体来说,参数主要包括发射机的坐标,发射机与地面的垂直高度L、第i个用户所在位置与发射机在接收平面投影位置的欧氏距离r
由于用户均匀分布在发射机附近,故r
其中r表示用户到圆心的距离。
发射机与第i个用户之间的视距链路距离
步骤2,确定仿真的链路类型:可见光通信信道中包含两类通信链路:视距链路(Light-of-sight,LOS链路)和NLOS链路。具体来说,LOS链路指的是发射的光信号以直线路径直接传播到接收机,而不被任何东西阻挡或反射,其在可见光通信系统中占主要部分。NLOS链路指的是发射的光信号不以直线直接传播到接收机,而是经过某种物体(如墙壁)的反射再到达接收机。1阶NLOS链路指的是信号只经过一阶反射到达接收机,2阶链路指的是信号经过两阶反射到达接收机,以此类推。
一阶反射功率远小于LOS链路的功率,而高阶反射得到的功率更是远小于一阶反射功率。在本发明中仅考虑LOS链路。
步骤3,建立基于用户公平性最大化系统和速率的数学模型,确定模型中相关参数,主要包括:直流偏置I
本发明中,所有用户都采用M元脉冲位置调制(Pulse Position Modulation,PPM),第i个用户的调制信号s
为了保证传输信号的非负性,可以得到传输信号S表示为:
采用8-ary脉冲位置等调制方案对数据进行调制,由于p
在使用IM/DD的NOMA-VLC系统中,光功率与电振幅成正比。基于LED器件的发光能力以及保护人眼安全的需要,透射光强应该受到允许的峰值光强B的限制,即:
此外,各个用户的总功率应该小于最大传输功率,表示为:
接收机的视场角φ
接收机的光学滤波器增益T
叠加的信号通过VLC信道后被接收,并引入了独立的零均值加性高斯白噪声n
其中,
其中,A
其中,η表示折射率。
步骤4,确定目标函数以及约束条件:当用户位于LED光束的覆盖范围内时由于距离的不同会导致信道增益有所不同。不失一般性,将信道增益按照升序排序为|h
根据上述SIC原理解码用户信号,并将总带宽归一化为单位,第i个用户采用串行干扰消除技术,能够对信道较弱的用户信号进行完美解码,部分消除用户间干扰,进而第i个用户的速率下界由给出:
系统的和速率可以表示为:
此外,对数效用函数已被证明在许多场景下的多用户无线通信中可实现良好的用户公平性。因此为了保证用户公平性,本发明对用户的速率使用对数效用函数并求和作为目标函数,可以得到:
其中,h
本发明提出了基于公平性最大化NOMA-VLC系统和速率的问题。为了保证用户公平,引入了对数效用函数来阐述公平性问题,使用最大化用户和速率的对数效用函数作为目标函数。进而,提出了一种迭代算法,该算法能有效获得VLC系统中NOMA的最优功率分配。综上,本发明目标函数以及约束条件可以表示为:
p
其中C=min{I
步骤5,确定与麻雀搜索算法对比的两种功率分配策略:
固定功率分配(Fixed Power Allocation,FPA)算法根据用户总数量和用户的SIC顺序为用户分配功率,被视为是一种静态功率分配方案。对于N个用户NOMA系统,将用户的信道增益进行升序排序,分配给系统中相邻两个用户的发射功率的比值是一个固定值。具体地,分配给用户i的功率为:
P
其中α(0<α<1)表示功率分配因子,由公式可以看出,功率会按照降序的顺序分配给每个用户,信道增益较低的用户可以获得更高的分配功率。由于功率分配因子α的值是固定的,该算法的优点是计算复杂度低,缺点是在功率分配时没有考虑用户的信道质量,性能较差。
增益比功率分配(Gain Ratio Power Allocation,GRPA)算法是一种动态功率分配算法,该算法考虑了用户的信道状况对功率分配的影响,并根据用户的路径损耗成比例分配功率。引入功率分配因子,并利用用户间信道增益的差异调节功率分配因子,使得信道条件较差的用户能够分配到更多的功率,实现用户功率分配的公平性。在一个存在N个用户的系统中,将信道增益按照升序的方式排序,分配给第i个用户的功率为:
步骤6,确定麻雀搜索算法的参数,包括:最大迭代次数iter
步骤7,计算得到麻雀搜索算法中用户的分配功率:通过麻雀搜索算法迭代得到最优麻雀的位置以及适应度值,进而可以得到最优的功率分配结果和最大的系统和速率,即找到步骤4中目标函数的最优值。麻雀搜索算法迭代流程图如图4所示,可以总结为以下步骤:
步骤一:初始化算法的参数,主要包括最大迭代次数iter
步骤二:随机初始化所有麻雀的位置
步骤三:根据适应度函数
步骤四:利用
步骤五:利用
步骤六:利用
步骤七:根据更新后各个麻雀的最新位置,代入到
步骤八:判断当前的迭代次数是否小于设定的最大迭代次数,若小于则将迭代次数加一,然后继续重复步骤二到步骤七,否则,停止优化过程,输出最优麻雀的位置以及适应度值,进而可以得到最优的功率分配结果和最大的系统和速率。
步骤8,确定固定功率分配算法、增益比功率分配算法的功率分配因子α
步骤9,计算得到系统和速率和用户公平性:根据步骤7和步骤8可以得到三种算法下用户的分配功率,再由此计算得到系统和速率和用户公平指数。系统的和速率可以表示为:
为了评价所用算法得到的系统公平性,引入了Jain公平指数。公平指数一般用来表示系统的公平性,取0~1之间的连续值,越接近1表示资源分配越公平。
步骤10,计算得到在不同用户数量和不同最大发射功率条件下的系统和速率和用户公平指数:改变用户数量,比较不同算法的和速率与用户数量的关系,如图5所示。改变用户数量,进一步比较不同算法的Jain公平指数与用户数量的关系,如图6所示。确定用户数量,改变发射功率,根据步骤7和S8得到三种算法的功率分配因子,计算得到系统和速率,比较不同算法的发射功率与和速率的关系,如图7所示。
本发明基于具有单个发射机和多个用户的NOMA-VLC下行链路系统,建立了基于用户公平性最大化系统和速率的数学模型,提升系统和速率和用户公平性。本发明考虑到VLC信号的非负性和人眼的安全性设置了光功率约束条件,提出了一种基于麻雀搜索算法的NOMA功率分配策略,提高了搜索精度、收敛速度和稳定性。本发明所提出的麻雀搜索算法支持任意场景相关参数、任意发射/接收机相关参数、任意用户数量。仿真结果与分析对多用户功率分配具有指导意义。
实施例2
一种基于麻雀搜索算法的NOMA-VLC功率分配方法同实施例1,本实施例中,步骤7所述的计算得到麻雀搜索算法中用户的分配功率,包括有以下步骤:
步骤7.1,麻雀搜索算法模拟了麻雀在觅食和反捕食中的争夺、合作和监视等行为。发现者通常拥有较高的能源储备并负责搜索食物丰富的区域,为所有的追随者提供觅食的区域和方向。追随者则依靠发现者的引领,在探索者找到目标后进行聚集,以提高自身的捕食率。警戒者则是负责保护整个麻雀种群,警惕天敌的到来。在搜索精度、收敛速度和稳定性等方面具有良好的表现。麻雀搜索算法已经在多个方面得到应用。在本发明中用X表示麻雀位置矩阵,矩阵中每个元素表示目标问题可能的解,可以得到:
其中,n是麻雀的数量,d是待优化参数的维度,N
步骤7.2,进而,每一个麻雀的适应度值可以表示为:
其中,每一行f([x
其中t表示当前迭代轮次,j=1,2,…,d,
步骤7.3,追随者会频繁地监视发现者。当追随者注意到发现者找到了好的食物,它们就会离开当前的位置和到达发现者所在的位置与发现者争夺食物。当追随者抢夺食物成功后,他们会到达新的位置,追随者的位置更新公式描述如下:
X
步骤7.4,麻雀中警觉者的初始位置是在种群中随机产生的。警觉者的初始位置数学模型可表示为:
其中X
为简单起见,当f
步骤7.5,根据更新后各个麻雀的最新位置,代入到下式:
重新计算所有麻雀的适应度值,将得到的适应度值与原来的最优值进行比较,更新当前麻雀种群的最优值与最差值,并更新全局的最优值和最差值;
步骤7.6,判断当前的迭代次数是否小于设定的最大迭代次数,若小于则将迭代次数加一,然后继续重复步骤7.2到步骤7.5,否则,停止优化过程,输出最优麻雀的位置以及适应度值,进而可以得到最优的功率分配结果和最大的系统和速率。
实施例3
一种基于麻雀搜索算法的NOMA-VLC功率分配方法同实施例1-2,本实施例中,步骤9计算得到系统和速率以及用户公平指数,以对分配结果进行评估,包括有以下步骤:
步骤9.1,计算用户的信道增益h
步骤9.2,计算得到系统和速率和用户公平指数:根据三种算法下用户的分配功率,系统的和速率可以表示为:
步骤9.3,为了评价所用算法得到的系统公平性,引入了Jain公平指数J。公平指数一般用来表示系统的公平性,取0~1之间的连续值,越接近1表示资源分配越公平。
实施例4
一种基于麻雀搜索算法的NOMA-VLC功率分配方法同实施例1-3,本实施例中,步骤10所述的计算得到不同条件下的系统和速率和用户公平指数,包括有以下步骤:
步骤10.1,计算得到在不同用户数量下的系统和速率:基于不同的最大发射功率以及用户数量,使用蒙特卡罗模拟来评估优化后系统的和速率以及公平性性能,并与固定功率分配(FPA)算法以及增益比分配(GRPA)算法的结果进行了对比。具体地说,改变用户数量,比较不同算法的和速率与用户数量的关系,如图5所示。
步骤10.2,计算得到在不同用户数量下的用户公平指数:改变用户数量,比较不同算法的用户公平指数与用户数量的关系,如图6所示。
步骤10.3,计算得到在不同最大发射功率下的系统和速率:确定用户数量,改变发射功率,根据步骤7和步骤8得到三种算法的功率分配因子,计算得到系统和速率,比较不同算法的发射功率与和速率的关系,如图7所示。
基于计算得到的不同条件下的系统和速率和用户公平指数,本发明所提出的麻雀搜索算法支持任意场景相关参数、任意发射/接收机相关参数、任意用户数量。仿真结果与分析对多用户功率分配具有指导意义。
下面给出一个更完整,更具体的实例,对本发明进一步说明。
实施例5
一种基于麻雀搜索算法的NOMA-VLC功率分配方法同实施例1-4,包括有以下步骤:
步骤1,确定发射机和用户的接收PD相关参数,即LED的坐标(2.5,2.5,3),发射机与地面的垂直高度L=3m,用户均匀分布在发射机附近,用户i所在位置距离LED在接收平面投影位置的欧氏距离r
步骤2,确定仿真的链路类型,即视距链路(LOS)。
步骤3,确定系统模型中相关参数,即直流偏置
步骤4,确定目标函数以及约束条件,对用户的速率使用对数效用函数并求和作为目标函数。目标函数以及约束条件可以表示为:
p
其中C=min{I
步骤5,确定与麻雀搜索算法对比的两种功率分配策略,固定功率分配算法和增益比功率分配算法。
步骤6,确定麻雀搜索算法的参数,将最大迭代次数设置为iter
步骤7,计算得到麻雀搜索算法中用户的分配功率:通过麻雀搜索算法找到步骤4中目标函数的最优值。
步骤8,确定固定功率分配算法、增益比功率分配算法的功率分配因子α
NOMA-VLC系统中用户的分配功率计算完毕,为研究麻雀搜索算法的有效性,还需计算三种算法的系统和速率和用户公平指数。
下面给出一个工程应用的例子,应用本发明计算得到的NOMA-VLC用户的分配功率,计算与分析在不同用户数量和不同最大发射功率条件下的系统和速率和用户公平指数。
实施例6
一种基于麻雀搜索算法的NOMA-VLC功率分配方法同实施例1-5,包括有以下步骤:
设置仿真参数:系统仿真参数均同实例5,
仿真内容:计算得到在不同用户数量和不同最大发射功率条件下的系统和速率和用户公平指数:改变用户数量,比较不同算法的和速率与用户数量的关系。改变用户数量,进一步比较不同算法的Jain公平指数与用户数量的关系。确定用户数量,改变发射功率,得到三种算法的功率分配因子,计算得到系统和速率,比较不同算法的发射功率与和速率的关系。
仿真结果分析:仿真结果参见图5-图7。具体来说,麻雀搜索算法:当用户数量为2时,计算得到和速率为2.0590bps/Hz,用户公平指数为0.9495。当用户数量为3时,计算得到和速率为2.0838bps/Hz,用户公平指数为0.93759。当用户数量为4时,计算得到和速率为2.0964bps/Hz,用户公平指数为0.93425。当用户数量为5时,计算得到和速率为2.0991bps/Hz,用户公平指数为0.93179。当用户数量为6时,计算得到和速率为2.1095bps/Hz,用户公平指数为0.93365。当用户数量为7时,计算得到和速率为2.1133bps/Hz,用户公平指数为0.93305。
固定功率分配算法:具体来说,当用户数量为2时,计算得到和速率为1.9906bps/Hz,用户公平指数为0.9756。当用户数量为3时,计算得到和速率为1.8851bps/Hz,用户公平指数为0.91817。当用户数量为4时,计算得到和速率为1.7604bps/Hz,用户公平指数为0.79689。当用户数量为5时,计算得到和速率为1.6275bps/Hz,用户公平指数为0.67392。当用户数量为6时,计算得到和速率为1.5327bps/Hz,用户公平指数为0.56694。当用户数量为7时,计算得到和速率为1.4332bps/Hz,用户公平指数为0.48609。增益比功率分配算法:具体来说,当用户数量为2时,计算得到和速率为1.9817bps/Hz,用户公平指数为0.9472。当用户数量为3时,计算得到和速率为1.8487bps/Hz,用户公平指数为0.88577。当用户数量为4时,计算得到和速率为1.7032bps/Hz,用户公平指数为0.75328。当用户数量为5时,计算得到和速率为1.5582bps/Hz,用户公平指数为0.61841。当用户数量为6时,计算得到和速率为1.4711bps/Hz,用户公平指数为0.52221。当用户数量为7时,计算得到和速率为1.3773bps/Hz,用户公平指数为0.4449。在用户数为7时,最大发射功率为12mV,采用麻雀算法得到的和速率比FPA算法和GRPA算法得到的和速率分别提升了40.45%和53.44%。
综上所述,本发明是一种基于麻雀搜索算法的NOMA-VLC功率分配方法。可用于解决现有功率分配算法无法同时保证用户公平性与系统和速率的问题。包括:确定发射机和用户的接收PD相关参数,确定仿真的链路类型,确定系统模型中相关参数,确定目标函数以及约束条件,确定与麻雀搜索算法对比的两种功率分配策略,确定麻雀搜索算法的参数,计算得到麻雀搜索算法中用户的分配功率,确定固定功率分配算法、增益比功率分配算法的功率分配因子α
本发明基于具有单个发射机和多个用户的NOMA-VLC下行链路系统,建立了基于用户公平性最大化系统和速率的数学模型,提升系统和速率和用户公平性。本发明考虑到VLC信号的非负性和人眼的安全性设置了光功率约束条件,提出了一种基于麻雀搜索算法的NOMA功率分配策略,提高了搜索精度、收敛速度和稳定性。本发明所提出的麻雀搜索算法支持任意场景相关参数、任意发射/接收机相关参数、任意用户数量。仿真结果与分析对多用户功率分配具有指导意义。
- 基于麻雀搜索算法优化核极限学习机的风电功率预测方法
- 一种基于改进麻雀搜索算法的超声波流量计故障诊断方法