发明内容
本发明的目的在于克服上述已有技术的不足,提出一种物理层安全约束下协同OFDMA系统功率控制方法,在保证物理层安全约束的情况下,提高用户的安全速率。
实现本发明的技术思路是,用户无论选择直传或者协同模式,都要在保证通信信道优于窃听信道的前提下进行用户子载波功率的分配,以获得最佳用户安全速率,同时引入代价函数,在保证信道安全容量的同时,抑制用户盲目的增加发送功率。其实现步骤包括如下:
(1)每个用户节点依次向所有中继节点和基站d发送探测信号,基站d接收到该探测信号后进行译码,当译码正确时,执行步骤(2),反之,执行步骤(5);
(2)基站d向用户节点sm和所有中继节点发送确认信息“1”,并向用户节点sm发送sm到基站d的信道状态信息CSI,用户节点sm在接收到确认信息后,加入直传用户节点集
(3)对上述已选定直传模式的直传用户节点,设计直传效用函数
其中,是用户节点sm可用的子载波中的奇数集,为用户节点sm到基站d的归一化信道增益,σ2为高斯白噪声的功率谱密度,为子载波n上用户节点sm与基站d之间的信道状态信息,为用户节点sm在子载波n上的发送功率,αm为用户节点sm的代价因子,且αm≥10-2;
(4)令迭代次数t=1,根据上述直传效用函数迭代计算每个子载波上的发送功率:
(4a)初始化当前子载波n=1,设置剩余功率值为其中为用户节点sm的最大发射功率;
(4b)用户节点sm通过求解得到当前子载波n上应分配的功率值并根据值的范围为子载波分配功率值:当时,将作为子载波n上分配的功率值;否则,将作为子载波n上分配的功率值,并将n之后的子载波上功率值设为0,跳转步骤(4d);
(4c)判断当前分配的功率值是否分配至最后一个子载波,若已经分配至最后一个子载波则结束功率分配过程,否则更新剩余功率值为和功率约束范围为令n=n+1,返回步骤(4b),开始下一个子载波的分配;
(4d)判断此轮迭代中,用户子载波的功率值与上一次迭代获得的功率值之差的2-范数是否小于预先设定的门限ε,ε≤10-2,如果2-范数小于ε,循环结束,求得的发送功率即为各用户节点的最优发送功率值;反之,令t=t+1返回步骤(4a)进入下一次迭代更新过程;
(5)基站d向用户节点sm和所有中继节点发送确认信息“0”,中继节点rk收到确认信息后,若能正确译码步骤(1)中收到的探测信号则向用户节点sm发送用户节点sm与中继节点rk的信道状态信息,若不能正确译码则不发送信道状态信息;
(6)用户节点sm在收到确认信息后,通过计算中继信息量Ha,km选择一个中继节点作为用户节点sm的协同节点进行协同信息传输,并加入协同用户节点集C;
(7)对选定协同模式的用户节点sm∈C,设计协同效用函数
其中,为用户节点sm可用的子载波集合, 与分别是中的奇数集与偶数集,为用户节点sm到中继节点rk的归一化信道增益,为中继节点rk到基站d的归一化信道增益,与分别为子载波n上中继节点rk与基站d之间的信道状态信息和信道增益,σ2为高斯白噪声的功率谱密度,Pr为中继节点的发射功率,为用户节点sm在子载波n上的发送功率,βm为用户节点sm的代价因子,且βm≥10-2;
(8)初始化迭代次数t=1,根据协同效用函数迭代计算每个子载波上的发送功率:
(8a)初始化当前子载波n=1,设置剩余功率值为其中为用户节点sm的最大发射功率;
(8b)用户节点sm通过求解得到当前子载波n上应分配的功率值并根据值的范围为子载波分配功率值:当时,将作为子载波n上分配的功率值;否则,将作为子载波n上分配的功率值,并将n之后的子载波上功率值设为0,跳转(8d);
(8c)判断当前分配的功率值是否分配至最后一个子载波,若已经分配至最后一个子载波则结束功率分配过程,否则更新剩余功率值为与功率约束范围令n=n+1,返回步骤(8b),开始下一个子载波的分配;
(8d)判断此轮迭代中,用户子载波的功率值与上一次迭代获得的功率值之差的2-范数是否小于预先设定的门限ε,ε≤10-2,如果2-范数小于ε,循环结束,求得的发送功率即为各用户节点的最优发送功率值;反之,令t=t+1返回步骤(8a)进入下一次迭代更新过程。
与现有技术相比,本发明具有如下优点及显著效果:
1)本发明考虑了基于物理层安全的协同OFDMA网络中的子载波功率分配,在物理层安全约束下选择最优的用户发送功率,较之现有的不考虑物理层安全的功率控制方法能够在保证用户安全性的前提下得到用户节点的最优安全速率。
2)本发明考虑了用户节点的节能要求,在效用函数中引入了代价函数,较之已有的功率控制方法能有效防止用户盲目提高发生功率,实现节能。
3)本发明由于在整个功率分配过程中,由用户节点根据自己选择的直传或协同传输模式来选择不同的效用函数,因而可在保证安全容量的前提下,控制自身发送功率的纳什平衡NE值,既满足了安全速率要求,又节约发送功率。
具体实施方式
参照图1,本发明使用的传输系统是一个典型的单小区协同OFDMA系统,该系统包括基站、中继节点、用户节点。基站d位于小区中心;K个中继节点r1,...,rK均匀分布在小区内以基站d为圆心的圆上;M个用户节点s1,...,sM随机分布在整个小区中。每个用户节点均拥有N个可用的、且不能为其他用户节点使用的子载波,用户节点sm可用的子载波集合为中继节点和用户节点构成的集合分别为与考虑协同OFDMA系统中的上行通信链路,基站作为所有用户节点的目的节点;其中,采用直传的用户节点直接与基站通信,而需要协同通信的用户节点先将信息传至选定的一个中继节点,再由该中继节点以放大转发AF模式帮助用户节点转发信息给基站,如图2所示。
在协同传输模式下,第1时隙中,用户节点sm在子载波n上以功率同时向基站d以及中继节点rk发送信息;第2时隙中,中继节点rk在子载波n'上以功率Pr向基站d转发上一时隙从用户节点sm处接收到的信息。这里, 和是中的奇数集与偶数集,分别用于第1时隙传输信号的子载波集合,以及第2时隙协同传输信号的子载波集合,且满足n'=n+1。在传输过程中,中继节点rk也对这部分信息进行窃听。
参照图3,本发明基于上述系统在物理层安全约束下协同正交频分多址OFDMA系统的功率控制的方法,其实现步骤如下:
步骤1:每个用户节点依次向所有中继节点和基站d发送固定探测信号,基站d收到后对其进行译码,并将译码结果与原信号进行对比,若和原信号相同,即译码正确时,执行步骤2;反之,执行步骤5。
步骤2:基站d向用户节点sm和所有中继节点发送确认信息“1”并向用户节点sm发送sm到基站d的信道状态信息,该信道状态信息可由基于最小均方误差MMSE的信道估计方法来获知,具体计算过程可参见“GeorgiosB.Giannakis.SignalProcessingAdvancesinWirelessandMobileCommunicationsVolume1:TrendsinChannelEstimationandEqualization.Beijing:Posts&TelecommunicationsPress,2002,11”;用户节点sm在接收到确认信息“1”后,采用直接传输方式传输并加入直传用户节点集
步骤3:对加入直传用户节点集的直传用户节点,设计直传效用函数
由于不存在中继窃听的问题,按照安全容量的定义,其发送速率即为其安全速率,故将用户节点sm在单位功率上的速率设计为效用函数,同时,在效用函数中加入代价机制,以抑制用户节点盲目地增加发送功率,因此,用户节点sm的直传效用函数可设计为:
其中,是用户节点sm可用的子载波中的奇数集,为用户节点sm到基站d归一化信道增益,σ2为高斯白噪声的功率谱密度,为子载波n上用户节点sm与基站d之间的信道状态信息,为用户sm在子载波n上的发送功率,αm为用户节点sm的代价因子,令αm≥10-2,上述公式中第一部分为用户节点sm的安全速率,第二部分为发送信息代价。
步骤4:根据直传效用函数通过迭代计算用户节点sm每个子载波上的发送功率。
参照图4,迭代开始时令迭代次数t=1,本步骤的具体实现如下:
4.1)初始化当前子载波n=1,设置剩余功率值为其中为用户节点sm的最大发射功率;
4.2)用户节点sm通过求解得到当前子载波n上应分配的功率值并根据值的范围给子载波分配功率值:
当时,将作为子载波n上分配的功率值;否则,将作为子载波n上分配的功率值,并将n之后的子载波上功率值设为0,跳转执行步骤4.4);
4.3)判断当前分配的功率值是否分配至最后一个子载波,若已经分配至最后一个子载波,则结束功率分配过程;否则更新剩余功率值为与功率约束范围并令n=n+1,返回步骤4.2)开始下一个子载波的分配;
4.4)判断此轮迭代中,用户子载波的功率值与上一次迭代获得的功率值之差的2-范数是否小于预先设定的门限ε,ε≤10-2:如果2-范数小于ε,循环结束,求得的发送功率即为各用户节点的最优发送功率值;反之,令t=t+1返回步骤4.1)进入下一次迭代更新过程。
步骤5:基站d向用户节点sm和所有中继节点rk发送确认信息“0”,用户节点sm在收到确认信息“0”后,加入协同用户节点集C,中继节点rk收到确认信息“0”后,对步骤1中收到的探测信号进行译码,并将译码结果与原信号进行对比,若与原信号相同,即译码正确时,则向用户节点sm发送用户节点sm与中继节点rk的信道状态信息,反之不发送信道状态信息。
步骤6:针对各中继节点rk计算中继信息量并选择该中继信息量Ha,km最大值所对应的中继节点作为用户节点sm对应的协同节点进行协同信息传输,若没有能够协同的中继节点则停止传输;其中是用户节点sm可用的子载波中的奇数集,为用户节点sm与中继节点rk之间的信道状态信息,其模平方为信道增益。
步骤7:对加入协同用户节点集C的协同用户节点,设计协同效用函数
由于中继节点会窃听一部分其发往基站的信息,按照安全容量的定义,用户节点sm安全速率Rse应为其与基站d间互信息量RAF及其与对应的中继节点rk之间互信息量Re的差值,即
其中[x]+=max{x,0},当Rse之值为正时,其值为安全速率,否则Rse为没有达到安全速率要求。
由上式安全速率Rse可知,如果单方面地增加子载波n上用户节点sm的发送功率值则同时增大了上述等式右端减号前后的两项的值,其结果并不一定使得安全速率的值得到优化。如何尽可能最大化二者之间的差值,是解决这一问题的关键,设计协同效用函数中的目的即在于此。通过协同效用函数保证用户节点sm的安全速率恒为正数,即使得用户节点sm到对应中继节点rk之间的等效信噪比SNR值大于用户节点sm到基站d之间的SNR值,同时保证协同效用函数的收敛性。另一方面,为了抑制用户节点盲目地增加发送功率,需在协同效用函数中加入代价机制。为此,本发明将用户节点sm的协同效用函数可设计为:
其中,为用户sm可用的子载波集合, 与分别是中的奇数集与偶数集,为用户到中继归一化信道增益,为中继到基站归一化信道增益,与分别为子载波n上中继节点rk与基站d之间的信道状态信息和信道增益,σ2为高斯白噪声的功率谱密度,为用户sm在子载波n上的发送功率,βm为用户节点sm的代价因子,且βm≥10-2,Pr为中继节点的转发功率。
步骤8:根据协同效用函数通过迭代计算用户节点sm每个子载波上的发送功率。
参照图4,迭代开始时令迭代次数t=1,本步骤的具体实现如下:
8.1)初始化当前子载波n=1,设置剩余功率值为其中为用户节点sm的最大发射功率;
8.2)用户节点sm通过求解得到当前子载波n上应分配的功率值并根据值的范围给子载波分配功率值:
当时,将作为子载波n上分配的功率值;否则,将作为子载波n上分配的功率值,并将n之后的子载波上功率值设为0,跳转执行步骤8.4);
8.3)判断当前分配的功率值是否分配至最后一个子载波,若已经分配至最后一个子载波,则结束功率分配过程;否则更新剩余功率值为与功率约束范围并令n=n+1,返回步骤8.2)开始下一个子载波的分配;
8.4)判断此轮迭代中,用户子载波的功率值与上一次迭代获得的功率值之差的2-范数是否小于预先设定的门限ε,ε≤10-2:如果2-范数小于ε,循环结束,求得的发送功率(t)即为各用户节点的最优发送功率值;反之,令t=t+1返回步骤8.1)进入下一次迭代更新过程。
本发明的效果可以通过下面的仿真实例得到进一步证明:
一、仿真条件
一个单小区OFDMA中继节点系统,小区半径为600m,基站位于六边形小区中央,6个中继节点均匀分布在以基站为圆心的圆上,它们以放大转发AF方式协助用户节点发送信息。8个用户节点随机分布在小区内,按照与基站的距离从近到远编号为1-8,其中用户节点1与用户节点2选择直传模式,剩余用户节点选择协同模式,每个用户节点的最大发射功率均为pmax=0.2W,每个用户节点有12个可用子载波,各通信链路上具有相同的噪声方差σ2=5×10-15W。信道增益模型为hi=const/dn,其中所涉及的参数分别设为:const=0.097,n=3。中继节点在每个子载波上的发射功率均为Pr=0.1W。另外,设置所有直传用户节点与协同用户节点的代价因子取值一致,为αm=βm=0.5,门限ε的取值与收敛速度与精度密切相关,一般地,ε≤10-2,本仿真ε=10-2。
二、仿真内容
仿真1:对小区内的用户节点分别采用注水算法和本发明方法对协同OFDMA系统进行功率分配,仿真系统的用户安全速率,仿真结果如图5所示。其中图5中的横轴为用户节点编号,纵轴为用户节点安全速率,白色表示用户节点采用注水算法用户节点安全速率,黑色表示用户节点采用本发明算法的用户节点安全速率。由图5可知,在协同模式下,由于存在中继节点的窃听问题,采用本发明的用户节点的安全速率大大优于注水算法。
仿真2:对小区内的用户节点分别采用注水算法和本发明方法对协同OFDMA系统进行功率分配,仿真系统的用户发送功率,仿真结果如图6所示。其中图6中的横轴为用户节点编号,纵轴为用户节点发送功率,白色表示用户节点采用注水算法用户节点发送功率,黑色表示用户节点采用本发明算法的用户节点发送功率。由图6可知,由于引入了代价因子,采用本发明的用户节点的发送功率低于注水算法,起到了节能的作用。
以上仿真结果表明,在选择协同模式时,采用本发明方法的用户节点是在信道安全容量大于0的前提下进行数据传输,从而保证了用户信息的安全性,而注水算法并不能保证信道安全容量大于0,同时采用本发明的用户节点的发送功率受到了代价函数的抑制,在较低的发送功率下保证了较高的安全速率。