米 洪,鄭 瑩
(南京交通職業技術學院電子信息工程學院,江蘇 南京 211188)
能量采集(EH)是延長無線網絡壽命的有效技術[1-2],廣泛應用于風能、太陽能和無線射頻(RF)能量的采集領域。由于RF能量穩定且易控制,相比于風能和太陽能,RF的能量采集(RF-EH)應用更廣泛[3]。
為了提高網絡吞吐量和覆蓋區域,基于轉發的無線攜能協作通信網絡(WPCCN)受到廣泛關注。WPCCN中轉發節點和用戶均通過下行鏈路(DL)中的混合接入點(HAP)獲取電能。同時,轉發節點和用戶利用所采集的能量,通過上行鏈路(UL)向HAP傳輸數據[4-6]。其中,文獻[4]針對WPCCN中的3類節點(HAP, 用戶和轉發節點),推導了平均吞吐量的表達式,并提出基于信道狀態信息(CSI)的轉發節點選擇算法。文獻[5]提出自適應傳輸(AT)協議。在AT協議中,HAP先給用戶充電,然后和用戶一起估計CSI,再依據所估計的CSI,AT協議決策是否通過轉發節點轉發或直接傳輸方式傳輸數據。文獻[6]研究了轉發節點位置對鏈路中斷性能的影響。
針對WPCCN網絡,文中研究提高網絡吞吐量的策略,提出基于傳輸時間分配和轉發節點選舉的吞吐量最大化算法(TARM)。TARM算法通過擇優選擇轉發節點和優化分配傳輸時間,提升總吞吐量。性能分析表明,合理地選擇轉發節點有利于網絡吞吐量的提升,且提出的TARM算法的性能逼近于窮盡搜索算法。
考慮如圖1所示的WPCCN系統,由1個配備全雙工(FD)天線[7]的HAP、M個半雙工(HD)的轉發節點和N個HD的用戶。通過FD天線在向轉發節點和用戶傳輸能量的同時,HAP同步地接收來自用戶傳輸的數據。
用戶和轉發節點將從HAP接收的能量存儲在自己的電池中。令Br表示第r個轉發節點的初始儲能,r=1,2,…,M;令Bu表示第u個用戶的初始儲能,u=1,2,…,M。

圖1 基于轉發的WPCCN網絡架構Fig.1 Relay-based WPCCN network architecture
將時間軸劃分為等長的若干個幀,每個幀又劃分為多個時隙,這些時隙分配給用戶和轉發節點,并依據所分配的時隙有序地傳輸數據[8]。
令Eu表示用戶u從HAP收集的能量[9]:
(1)
式中:Cu為用戶u的能量采集率;su,r為二值變量,su,r=1表示用戶u選擇了轉發節點r作為自己的轉發節點,su,r=0表示用戶u未選擇轉發節點r作為自己的轉發節點;τu,r為用戶u向轉發節點r的數據傳輸時間;τr為轉發節點r向HAP傳輸數據的時間。
用Er表示轉發節點r從HAP收集的能量:
(2)
式中:Cr為轉發節點r的能量采集率;si,r為布爾變量,si,r=1表示轉發節點r為第i個用戶轉發數據,si,r=0表示轉發節點r不為第i個用戶轉發數據;τi,r為用戶i向轉發節點r傳輸數據的時間;τr為轉發節點r向HAP傳輸數據的時間。
引用文獻[10]的基于對數函數的非線性能量采集模型,用戶u和轉發節點r端的能量采集率為[10]:
(3)
式中:x∈[u,r];Ps為飽和功率;Φx=(1+exp(-ax·(Phhx-bx)))-1,其中ax,bx均為接收能量電路的參數;Ph為HAP傳輸功率;hx為信道增益值,當x=u時,hu表示用戶u至HAP鏈路的信道系數增益,當x=r時,hr表示轉發節點r至HAP鏈路的信道系數增益。
假定用戶和轉發節點將采集的能量全部用于數據傳輸。據此,在用戶-轉發節點-HAP的兩跳鏈路中,用戶u和轉發節點r的傳輸功率為:
(4)
利用香農定理,用戶u至轉發節點r鏈路上的瞬時吞吐量和轉發節點r至HAP鏈路上瞬時吞吐量分別為:
(5)
式中:gu,r,gr分別為用戶u至轉發節點r鏈路,轉發節點r至HAP鏈路的信道系數;βPh為自干擾功率;N0w為噪聲功率;w表示系統帶寬。
用戶-轉發節點-HAP的兩跳的端到端吞吐量取決于Ru,r和Rr間的最小值:Rtotal=min{Ru,r,Rr}。
TARM算法旨在通過聯合優化傳輸時間和轉發節點的選舉,提升網絡吞吐量。對于用戶u和轉發節點r而言,通過聯合優化τu,r和τr以及su,r的值,提高Rtotal值。因此,建立目標函數:
(6)
以上目標函數是一個混合整數非線性規劃問題。為了求解式(6),采用兩步法求解:1)基于信噪比的轉發節點選舉算法。即依據用戶至轉發節點以及轉發節點至HAP的兩跳鏈路的信噪比,擇優為用戶選舉轉發節點。2)依據第一步的結果(為用戶分配了轉發節點),優化τu,r和τr的值。即su,r值已知,優化τu,r和τr的值。利用Lagrange法[11]和梯度算法[12]求解用戶和轉發節點的傳輸時間。為了描述簡單,將該算法簡稱為LGUR算法。
對于每個用戶,計算用戶至轉發節點以及轉發節點至HAP的兩跳鏈路的信噪比,并從中選擇具有最大信噪比的轉發節點分配至用戶。
具體而言,對于用戶u,計算所有轉發節點r參與轉發的兩跳鏈路的信噪比為[13]:
(7)

(8)
為分析在已給用戶分配了轉發節點條件下,如何優化選擇τu,r和τr的值,提升網絡吞吐量,將式(6)的目標函數改寫成:
(9)

(10)
為求解式(10),將式(10)所示的目標函數構成Lagrange函數:

(11)
式中,u和φ為Lagrange乘子。
為了求解式(11),計算Lagrange函數L關于τu,r和τr的偏導數。首先求解Lagrange函數L關于τu,r的偏導數,并令其等于零:

(12)
整理式(12)可得:
(13)

(14)
式中:W(·)表示Lambert函數[14]。類似的,通過求解Lagrange函數L關于τr的偏導數,并令其等于零,可得:
(15)
式中,γr=grEr/(βPh+N0w)。
引用文獻[15]的梯度算法更新Lagrange乘子μ和φ:
(16)

(17)
式中:j為迭代次數;λμ和λφ均為迭代權重。
利用MATLAB軟件建立仿真平臺,通過Monte Carlo實驗分析TARM算法的性能。每次實驗獨立進行次數為50,取平均數據作為最終的實驗數據。用戶數N=4,轉發節點數M=4。EH模型的參數為:Ps=7 mW,a=1500,b=0.0022;Ph=1 dB,用戶和轉發節點的初始能量分為Bu=Br=10-7J;w=1 MHz,β=-80 dB。
采用如式(18)所示的信號傳輸模型[16]:
PL(d)=PL(d0)+10ηlg(d/d0)+n
(18)
式中:d為收發間隔距離;d0為參考距離,其值為1 m;PL(d0)=30 dB;η=2.76;n為噪聲變量,其服從均值0、方差為42的高斯分布。
此外,選擇兩類算法作為參照,進而分析TARM算法的吞吐量性能:1)窮舉搜索(BFS)算法。窮舉搜索采用窮舉式搜索策略,通過把需要解決問題的所有可能解逐一試驗,來找出符合條件的全局最優解。即BFS算法搜索用戶與轉發節點間的最優組合,得到具有最大吞吐量的解。顯然,窮舉搜索算法能夠獲取全局最優解,但是計算復雜度高。逐一實驗所有可能的解所消耗的時間過多,運算量高。窮舉搜索算法與TARM算法的不同在于:TARM算法先通過兩跳的信噪比擇優選擇轉發節點,再利用LGUR算法優化用戶和轉發節點的傳輸時間,進而提升吞吐量。窮舉搜索算法搜索的是最優解,而TARM算法計算的是問題的次優解。2)隨機+LGUR算法(RGUR)。RGUR表示隨機為用戶選擇轉發節點,然后利用LGUR算法計算用戶和轉發節點的傳輸時間。RGUR算法與TARM算法的區別在于:為用戶選擇轉發節點的方法不同。TARM算法通過兩跳的信噪比擇優選擇轉發節點。將RGUR算法與TARM算法進行對比,目的在于分析轉發節點對吞吐量的影響。
3.2.1 HAP的傳輸功率對吞吐量的影響
首先分析HAP的傳輸功率Ph對吞吐量的影響,其中Ph取值為1~20 dB,如圖2所示。

圖2 吞吐量隨HAP傳輸功率的變化情況Fig.2 Throughput for different HAP transmit power
從圖2可知,Ph的增加使吞吐量呈上升趨勢。原因在于:Ph越大,用戶和轉發節點能夠收集更多能量。但當Ph增加到一定值后,吞吐量隨Ph的增加而上升的速度變緩。原因在于:用戶和轉發節點的能量收集達到飽和。即隨著Ph的增加,EH電路達到飽和,網絡吞吐量趨近于常數。
此外,相比于RGUR算法,TARM算法提高了吞吐量,這說明通過兩跳的信噪比選舉轉發節點能夠有效地提升吞吐量。同時,TARM算法的吞吐量逼近BFS算法。
3.2.2 用戶數對吞吐量的影響
接下來,分析用戶數對吞吐量的影響,其中用戶數N為1~4,如圖3所示。

圖3 吞吐量隨用戶數的變化情況Fig.3 Throughput for different numbers of users
從圖3可知,吞吐量隨用戶數N的增加而上升,這符號預期。但是相比于RGUR算法,TARM算法和BFS算法的吞吐量隨用戶數N的增加而上升的速度更快。這說明在網絡規模增大情況下,優化選擇轉發節點可以有效地提升吞吐量。此外,TARM算法和BFS算法的吞吐量性能相近。
3.2.3 用戶和轉發節點的初始儲能對吞吐量的影響
當初始儲能從10-8J至10-7J變化時,分析用戶和轉發節點的初始儲能對吞吐量的影響如圖4所示。從圖4可知,吞吐量隨初始儲能的增加呈線性增加。這符合預期:初始儲能越大,用戶和轉發節點工作時間越長,能夠在短時間內傳輸更多的數據量。此外,相比于RGUR算法,TARM算法的吞吐量仍保持較大的優勢。

圖4 吞吐量隨初始儲能的變化情況Fig.4 Throughput for different initial battery level
3.2.4 算法的運行時間
為評估TARM算法的運行時間,記錄算法的運行時間。運行次數為50,取平均值作為最終數據。圖5給出RGUR算法、TARM算法和BFS算法隨用戶數變化情況下的運行時間。

圖5 算法的運行時間Fig.5 Runtime of algorithm
從圖5可知,BFS算法的運行時間隨用戶數呈指數增加。而RGUR算法和TARM算法隨用戶數增加而保持緩慢增加,趨近于穩定。這說明盡管BFS算法能夠獲取最優的吞吐量,但其付出了高的運行時間,即以高的運行時間為代價。
在無線攜能協作通信網絡中,用戶通過轉發節點向HAP傳輸數據,同時從HAP收集能量。給用戶分配的轉發節點以及傳輸時間影響了吞吐量。為此,文中先建立目標函數,再利用兩步法求解,得到最優的傳輸時間。性能分析表明,提出的TARM算法提升了吞吐量。這也說明通過合理選擇轉發節點可提升吞吐量。
相比于BFS算法,TARM算法在吞吐量方面的性能仍具有一定的差距。但是BFS算法是以高的運行時間為代價。后期,將進一步優化TARM算法,使其吞吐量性能逼近于BFS算法。此外,文中只考慮了小型網絡場景,后期將擴展網絡場景。