基于能量采集的认知无线电时间和功率分配(二)
參考文章來自:基于能量采集的認知無線電時間和功率分配研究
https://x.cnki.net/read/article/pdfonline?filename=1019692099.nh&tablename=CMFDTOTAL&dbcode=CMFD&topic=&fileSourceType=1&taskId=&from=&groupid=&appId=CRSP_BASIC_PSMC&act=&ts=1584181528728
基于能量采集的認知無線電時間分配
模型:一對主用戶PT,PR,M對認知用戶ST,SR,一個時隙T:t1,t2,t3,t4t_1,t_2,t_3,t_4 t1?,t2?,t3?,t4?
模型如下圖:
1.在t1時間內,認知用戶采集能量
認知用戶采集PT射頻信號的能量,EkE_kEk?:第k個認知用戶采集到的能量
Ek=t1ξkPa∣hac∣2E_k=t_1\xi_kP_a|h_{ac}|^2Ek?=t1?ξk?Pa?∣hac?∣2
ξk\xi_kξk?表示STkST_kSTk?的能量采集效率,PaP_aPa?表示PTPTPT的發射功率,hach_{ac}hac?表示STkST_kSTk?的信道系數
PR收到的信號:yb1=Pahabxa+nby_{b1}=\sqrt{P_a}h_{ab}x_a+n_byb1?=Pa??hab?xa?+nb?
habh_{ab}hab?是鏈路PT->PR的信道系數,xax_axa?是PT發送的信號,nbn_bnb?是PR處的噪聲。假設信道中的噪聲是加性高斯白噪聲,其噪聲功率為N0N_0N0?,認知用戶的干擾忽略不計。
直連鏈路,PR收到的信噪比:γab=Pa∣hab∣2N0\gamma_{ab}=\frac{P_a|h_{ab}|^2}{N_0}γab?=N0?Pa?∣hab?∣2?
信噪比=S/N=log(信號功率密度/噪聲功率密度)
2.在t2t_2t2?時間內,主用戶選擇最佳的中繼
選擇中繼的要求:
a. Ek≥EthE_k \geq E_{th}Ek?≥Eth? ,EthE_{th}Eth?是能量門限
b. ∣hckb∣2≥Gth|h_{c_kb}|^2 \geq G_{th}∣hck?b?∣2≥Gth?,GthG_{th}Gth?是STkST_kSTk?->PR的信道增益門限
若有多個認知用戶滿足則,選擇能量與信道增益乘積最大的作為中繼節點。
3.t3t_3t3?時間內,最佳中繼認知用戶STkST_kSTk?協助主用戶傳輸信息
通過解碼轉發方式,STkST_kSTk?收到PT的信號:yck=Pahackxa+ncky_{c_k}=\sqrt{P_a}h_{a{c_k}}x_a+n_{c_k}yck??=Pa??hack??xa?+nck??其中,nckn_{c_k}nck??是STkST_kSTk?收到的高斯白噪聲,噪聲功率為N0N_0N0?。
STkST_kSTk?收到來自PT的信噪比為:
γack=Pa∣hack∣2N0\gamma_{a{c_k}}=\frac{P_a|h_{a{c_k}}|^2}{N_0}γack??=N0?Pa?∣hack??∣2?主用戶目的節點PR收到中繼節點的信息:
yb2=(1?λ)pckhckbxck+nby_{b2}=\sqrt{(1-\lambda)p_{c_k}}h_{c_kb}x_{c_k}+n_byb2?=(1?λ)pck???hck?b?xck??+nb?
其中pckp_{c_k}pck??是認知用戶STkST_kSTk?的發射功率,λ\lambdaλ是認知用戶功率分配的占比系數,xckx_{c_k}xck??是STkST_{k}STk?的發射信號,hckbh_{c_k}bhck??b是STkST_kSTk?->PR的信道系數。
PR收到中繼鏈路的信噪比為:
γckb=Pck∣hckb∣2N0\gamma_{{c_k}b}=\frac{P_{c_k}|h_{{c_k}b}|^2}{N_0}γck?b?=N0?Pck??∣hck?b?∣2?在一個時隙T中,PR收到的信噪比為:
γb=γab+min(γack,γckb)\gamma_{b}= \gamma_{ab}+min(\gamma_{ac_k},\gamma_{c_kb})γb?=γab?+min(γack??,γck?b?)
4.在t4t_4t4?時間內,認知用戶發送信息給SRkSR_kSRk?
SRkSR_kSRk?收到的信息:
yd=λpckhckdxck+ndy_vt6mr5x=\sqrt{\lambda p_{c_k}}h_{c_kd}x_{c_k}+n_dyd?=λpck???hck?d?xck??+nd?
SRkSR_kSRk?收到的信噪比:
γckd=λPck∣hckd∣2N0\gamma_{{c_k}d}= \frac{\lambda P_{c_k}|h_{{c_k}d}|^2}{N_0}γck?d?=N0?λPck??∣hck?d?∣2?
認知用戶STkST_kSTk?的能效函數:
ηk=Bt4log?2(γckdk+1)λpckt4+(1?λ)pckt3\eta_{k}= \frac{Bt_4\log_2({\gamma_{{c_k}{d_k} }+1)}}{\lambda p_{c_k}t_4+(1-\lambda)p_{c_k}t_3}ηk?=λpck??t4?+(1?λ)pck??t3?Bt4?log2?(γck?dk??+1)?
上式右邊上下都是凸函數,優化問題可以用效用函數來解決,效用函數:uk=t4Blog?2(1+γckdk)?w1pck(λt4+(1?λ)t3)u_k=t_4B\log_2(1+\gamma_{c_kd_k})-w_1p_{c_k}(\lambda t_4+(1-\lambda)t_3)uk?=t4?Blog2?(1+γck?dk??)?w1?pck??(λt4?+(1?λ)t3?)
w1w_1w1?是代價因子,w1pck(λt4+(1?λ)t3)w_1p_{c_k}(\lambda t_4+(1-\lambda)t_3)w1?pck??(λt4?+(1?λ)t3?)是代價函數。
優化函數可寫為:
max uku_kuk?
s.t γb≥SNRth\gamma_b \geq SNR_{th}γb?≥SNRth?
Pck∣hckdk∣2<IthP_{c_k}|h_{c_kd_k}|^2<I_{th}Pck??∣hck?dk??∣2<Ith?
t1+t2+t3+t4≤Tt_1+t_2+t_3+t_4\leq Tt1?+t2?+t3?+t4?≤T
0<ti<T0<t_i<T0<ti?<T,i=1,2,3,4
γb=γab+min(γack,γckb)\gamma_{b}= \gamma_{ab}+min(\gamma_{ac_k},\gamma_{c_kb})γb?=γab?+min(γack??,γck?b?),SNRthSNR_{th}SNRth?是主用戶服務要求的門限,IthI_{th}Ith?是認知用戶對主用戶造成干擾的門限值,那么優化問題可以寫為:
max uku_kuk?
s.t γab+γack≥SNRth\gamma_{ab}+\gamma_{ac_k} \geq SNR_{th}γab?+γack??≥SNRth?
γab+γckb≥SNRth\gamma_{ab}+\gamma_{c_kb} \geq SNR_{th}γab?+γck?b?≥SNRth?
Pck∣hckdk∣2<IthP_{c_k}|h_{c_kd_k}|^2<I_{th}Pck??∣hck?dk??∣2<Ith?
t1+t2+t3+t4≤Tt_1+t_2+t_3+t_4\leq Tt1?+t2?+t3?+t4?≤T
0<ti<T0<t_i<T0<ti?<T,i=1,2,3,4
時間分配算法
使用隨機的啟發式搜索算法——自適應差分進化算法,來搜索目標函數的最優值,差分進化算法有較強的全局收斂能力,自適應差分進化算法提高了搜索到全局最優值的概率。
假設在一個時隙T內,最佳中繼認知用戶STkST_kSTk?存儲的能量用完,即:Ek=λpckt4+(1+λ)pckt3E_k=\lambda p_{c_k}t_4+(1+\lambda)p_{c_k}t_3Ek?=λpck??t4?+(1+λ)pck??t3?
自適應差分進化算法步驟:種群初始化、變異操作、交叉操作、選擇操作
(1)種群初始化
min ?uk-u_k?uk?
s.t γab+γack≥SNRth\gamma_{ab}+\gamma_{ac_k} \geq SNR_{th}γab?+γack??≥SNRth?
γab+γckb≥SNRth\gamma_{ab}+\gamma_{c_kb} \geq SNR_{th}γab?+γck?b?≥SNRth?
Pck∣hck∣2<IthP_{c_k}|h_{c_k}|^2<I_{th}Pck??∣hck??∣2<Ith?
t1+t2+t3+t4≤Tt_1+t_2+t_3+t_4\leq Tt1?+t2?+t3?+t4?≤T
0<ti<T0<t_i<T0<ti?<T,i=1,2,3,4
初始化種群:tj,i,0=rand[0,1](tj(U)?tj(L))+xj(L)t_{j,i,0}=rand[0,1](t_j^{(U)}-t_j^{(L)})+x_j^{(L)}tj,i,0?=rand[0,1](tj(U)??tj(L)?)+xj(L)?
tj(U)和tj(L)t_j^{(U)} 和t_j^{(L)}tj(U)?和tj(L)?是根據優化函數得處tjt_jtj?的最大值和最小值
(2)變異
變異操作之后,自適應差分進化算法的變異向量:
xi,g+1=tr1,g+F(tr2,g?tr3,g)x_{i,g+1}=t_{r_1,g}+F(t_{r_2,g}-t_{r_3,g})xi,g+1?=tr1?,g?+F(tr2?,g??tr3?,g?)
其中,r1,r2,r3r_1,r_2,r_3r1?,r2?,r3?是隨機選擇的序號數,且r1≠r2≠r3≠ir_1 \neq r_2 \neq r_3 \neq ir1??=r2??=r3??=i,i是目標向量的序號,F是自適應變異算子:F=F02σ,其中σ=e1?(G/(G+1?g))F=F_02^\sigma,其中\sigma=e^{1-(G/(G+1-g))}F=F0?2σ,其中σ=e1?(G/(G+1?g)),G是最大進化代數,g表示當前進化代數,F0F_0F0?表示初始變異算子。
(3)交叉
目的是增加干擾參數向量的多樣性,實驗向量:
ui,g+1=u_{i,g+1}=ui,g+1?={ u1i,g+1,u2i,g+1,u3i,g+1,u4i,g+1u_{1i,g+1},u_{2i,g+1},u_{3i,g+1},u_{4i,g+1}u1i,g+1?,u2i,g+1?,u3i,g+1?,u4i,g+1?}
uji=xji,g+1,randb(j)<=CR∣∣j=rnbr(i)u_{ji}=x_{ji,g+1},randb(j)<=CR|| j=rnbr(i)uji?=xji,g+1?,randb(j)<=CR∣∣j=rnbr(i)
uji=tji,g+1,randb(j)>CR∣∣j≠rnbr(i)u_{ji}=t_{ji,g+1},randb(j)>CR|| j\neq rnbr(i)uji?=tji,g+1?,randb(j)>CR∣∣j?=rnbr(i)
其中,randb(j)表示第j個隨機數,范圍在[0,1],rnbr(i)={1,2,3,4}隨機選擇序列,交叉算子CR取值在[0,1]。
(4)選擇
求出的最優函數的最小值與實驗向量對比,取二者中的最小值為當前個體,循環以上四個操作至最大進化代數G。
仿真結果:
設置參數Pa,Ith,N0,Gm,F0,CR,Np,ti,λP_a,I_{th},N_0,G_m,F_0,CR,N_p,t_i,\lambdaPa?,Ith?,N0?,Gm?,F0?,CR,Np?,ti?,λ。
結論:
當時隙T越大,認知用戶的效用函數越大,非平均子時隙分配的效用函數比子時隙平均分配的效用函數大。對于固定時間分配,信道質量越好,發射功率越好,認知用戶的效用函數越高;當主用戶的信噪比門限值越高,認知用戶的效用函數越小。
關于差分進化算法https://blog.csdn.net/jodie123456/article/details/95486270,這篇博客講得清楚些,如果博文中有錯,歡迎指正。
總結
以上是生活随笔為你收集整理的基于能量采集的认知无线电时间和功率分配(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [html] 写一个搜索框,聚焦时搜索框
- 下一篇: [css] CSS3有哪些新增的特性?