唐一強,楊霄鵬,肖 楠,朱圣銘
(空軍工程大學信息與導航學院,西安,710077)
衛星通信以其特殊的優勢,已經成為移動通信領域中不可替代的重要部分,其主要的特點如下[1]:通信容量大,最高支持超過300 Gbps的容量;通信范圍廣,理論上只需3顆地球同步軌道衛星(GEO)就可以覆蓋除南北極以外的全球區域;能夠實現“動中通”,支持包括空中飛行器、陸地移動設備和海上移動設施的移動中不間斷通信;業務種類豐富,涵蓋了語音、圖像、視頻等多業務的移動通信。
與此同時,不斷增長的用戶業務對衛星通信的要求越來越高,傳統的衛星通信技術已經不能滿足業務增長的需求。多波束天線[2]是解決這個問題的重要方法[2]。多波束天線使用衛星蜂窩通信,利用多個具有高增益的點波束實現目標區域的通信,從而提升系統的頻帶和容量資源。但是,地球上的終端用戶往往分布是不均勻的,這會造成衛星各個波束之間的業務量差別很大,信道資源的需求不盡相同。因此,必須對衛星信道資源進行合理的調度,以提高衛星通信系統的性能。目前使用最廣泛的信道資源管理主要包括固定信道分配(FCA)、混合信道分配(HCA)和動態信道分配(DCA)[3]。
在固定信道分配方式中,即使在波束中沒有用戶使用信道資源,其他的波束用戶也不能使用該信道資源,這不僅造成信道資源的浪費,同時會增加網絡擁塞,降低網絡吞吐量。混合信道分配方案由固定信道分配和靈活信道分配兩部分組成,但是固定信道分配占比很大,導致信道資源利用率往往較低。在動態信道分配方案中,會充分考慮用戶的業務需求、信道增益和業務擁塞等影響因素,避免同頻干擾和波束間共信道干擾(co-channel interference, CCI)的影響,允許各波束任意選擇可用的信道,可以在保證用戶業務質量的前提下最大化信道資源利用效率[4]。
文獻[5]提出了一種結合終端的地理位置信息為用戶實時地分配資源的融合波束覆蓋信道動態分配算法(fusion beam coverage-dynamic channel allocation algorithm ,FBC-DCA),結果表明該算法對于帶寬利用率有一定的提升。文獻[6]分析了以最大化容量為目標的資源自適應動態分配算法,結果顯示該算法比較適合非對稱的通信需求。文獻[7]提出基于多終端和多業務優先級的動態信道分配算法,算法根據不同終端和不同業務級別分配信道,結果表明該算法能較好地提升滿意度。文獻[8]提出一種為多類型呼叫、多類型業務和多類型終端的動態信道預留策略,結合遺傳與粒子群混合算法動態求解最佳的預留信道閾值分布,仿真表明算法能夠較好地為高等級用戶提供滿意的服務質量。文獻[9]結合用戶的運動狀態,對用戶的預測軌跡上擇取抽樣點,把這些點的平均干擾選為動態信道分配的指標,仿真結果得出該策略能將用戶的平均信噪比提升大約0.5 dB。
通過對上述關于DCA算法研究現狀的分析可知,目前DCA算法更多地關注單一獨立時刻的信道分配,忽略了當前時刻的信道分配會對之后的信道資源產生影響,即信道分配具有時域相關性,這就造成了信道資源使用不夠充分和阻塞率高的問題。深度強化學習能夠有效解決具有時域相關性的序列決策問題[10],因此本文提出一種基于深度強化學習的動態衛星信道分配算法DRL-DCA,將衛星和環境交互建模為馬爾科夫決策過程,通過環境的反饋提升衛星的決策能力。
強化學習(reinforcement learning, RL)是指一類從(與)環境交互中不斷學習的問題以及解決這類問題的方法,包含智能體和環境2個可以交互的對象。
智能體(agent)可以感知外界環境的狀態(state)和反饋的獎勵(reward),并進行學習和決策。環境(environment)是智能體外部的所有事物,并受智能體動作的影響改變其狀態,并反饋給智能體相應的獎勵。如圖1所示,智能體的決策功能是根據外界環境的狀態來做出不同的動作(action),而學習功能是根據外界環境的獎勵來調整策略。

圖1 智能體與環境的交互
深度強化學習則是利用深度學習的強大感知能力來定義問題和優化目標,利用強化學習強大的決策能力來解決策略和值函數的建模問題[4]。
智能體每一個動作并不能直接得到監督信息,需要通過整個模型的最終監督信息(獎勵)得到,智能體在當前狀態下的工作不會立刻被評判,需要在下一個狀態時獲得獎勵或懲罰[11]。這種算法是用不斷試錯的學習方式得到最優的策略,可使得決策持續獲得收益。在本文研究的模型中,我們將深度強化學習建模為一組馬爾科夫決策過程(Markov decision process,MDP)。
本文將衛星建模為智能體,地面用戶業務量建模為環境,衛星獲得的收益值通過最優化目標函數對信道分配作出決策。具體而言,衛星在時刻t通過對用戶和業務的觀測獲得狀態St∈S的抽象表達,接著衛星根據優化策略選擇執行動作at∈A(st),以概率pQ(st+1|st,at)進入下一個狀態,與此同時獲得收益rt+1,由獎勵信號對動作策略進一步優化更新,使智能體的收益最大化。
在本文的衛星多波束間動態信道分配問題中,考慮衛星在地面的多波束為n∈{n|n=1,2,…,N}。衛星通信帶寬Btot被平均分成M個信道,每個信道的帶寬為Bav=Btot/M,衛星的可用信道數目為m∈{m|m=1,2,…,M},地面用戶總數為K個,即時通信的用戶數目k∈{k|k=1,2,…,K}。在這個系統中,每個用戶終端u得到的信道資源分配用wu表示,wu=[wu,1,wu,2,…,wu,m]T,其中wu,m表示用戶u在第m個信道上的增益。由此可已得到整個通信系統為所有即時用戶分配信道的增益矩陣為W=[w1,w2,…,wu],W∈RM×K。在下行鏈路上,衛星發送給用戶u的衛星信號為:su=[su,1,su,2,…,su,m]T,其中su,m表示衛星在第m個信道上發送給用戶u的信號。從衛星到用戶終端的總衰減記為:L={li,j|1≤i,j≤K},L由自由空間路徑損耗A、發射衛星天線增益Gs和用戶端天線增益Gu構成。其中:
A=diag{a1,a2,…,ak};Gs={gk,n|1≤k≤K,1≤n≤N};Gu=diag{g1,g2,…,gk};L=A·Gu·Gs·XT。其中X表示用戶u在最大信號接入準則的約束下選擇波束接入的接入矩陣:
(1)
式中:xu,n=1表示用戶u接入波束n,否則表示用戶沒有接入波束n。在用戶終端u接收到的信號為:
(2)
式中:?表示哈達瑪積,最右式中第1項是用戶的有用信號,第2項是共信道干擾,第3項是噪聲。
下面計算用戶信干噪比。首先,定義一個以信道為基的資源分配矩陣D=WT,D∈RM×K,記為Dm=[dm,1,dm,2,…,dm,k]T,每一項表示衛星在信道m上的發射功率。由式(3)~(4)可知用戶在各個信道上的有用信號功率Pu和共信道干擾功率Iu。
Pu=|lu,u|2diag{wu}[diag{wu}]H
(3)

(4)
式中:gu=[lu,1,lu,2,…,lu,k]|(lu,k=0)。由此可得干擾信號和噪聲的和為:
Pnu=Iu+|σk|2EM
(5)
式中:EM表示M階單位陣。由香農容量公式進一步推知用戶u在資源分配下的理想可達速率為:
(6)
為了達到通信要求,可達速率不能低于某一個閾值,通常此閾值設為Cth,只有當Cu≥Cth時,用戶u才能正常通信,否則用戶u將會掉話或阻塞。當用戶有新的業務請求時,衛星系統查看目前是否存在可使用的信道資源,如果此時存在信道資源可供使用,衛星系統將會按照分配策略進行信道分配。衛星系統判斷波束是否存在閑置的信道資源,主要從以下幾個方面進行決策[12]:星上功率是否達到飽和狀態、單個波束的功率是否達到飽和以及此次的信道分配是否會損害已分配用戶的服務。為便于反映性能,定義一個性能指標Ψt,以此來表示新的業務請求是否被阻塞。
(7)
在此,定義以波束為基的資源分配矩陣B=[b1,b2,…,bn],每一項表示波束在對應的信道上的發射信號幅值大小。由此可推知衛星信道分配優化所有的約束條件為:
(8)
(9)
Cu≥Cth,?u∈Ut
(10)
(11)
式中:Pall表示衛星的最大發射功率;Pb表示單個波束的最大功率;Ut表示當前時刻新請求的用戶的信息。式(11)表示各個信道上發射的功率相同,并且單個用戶只允許分配一個信道。
在上述的約束條件下,要達到的最優化目標可用式(12)表示:
(12)
在此模型中我們用最小化阻塞率來衡量信道分配優劣[13-14],阻塞概率計算公式為:
Pfail=Ublock/Uarrival
(13)
式中:Ublock表示當前時刻被阻塞的用戶數目,Uarrival表示當前時刻達到衛星通信系統總的用戶數目。
如圖2所示,我們將衛星終端建模為智能體,把用戶業務量和信道占用狀態建模為環境,在智能體與環境交互的過程中使智能體的收益最大。智能體與環境的交互過程是一組馬爾科夫決策過程:衛星根據對用戶的觀測獲得當前的狀態St,接著衛星按照優化目標策略執行動作at,在環境改變時以概率p(st+1|st,at)轉為狀態St+1,從環境中獲得收益rt+1。
Q-learning是深度強化學習中一種非常經典的算法,該算法根據系統的狀態-動作值函數Q(s,a)進行不斷地迭代更新,根據收益r評估選擇接下來的動作的同時優化Q函數[15-16]。系統迭代公式為:
Q(s,a)←Q(s,a)+
α[r+γmaxa′Q(s′,a′)-Q(s,a)]
(14)
式中:α為學習速率;γ為折扣因子。可以看出α越大則Q值迭代后保留之前的效果越少;γ越大,長期的回報對當前時刻的影響就越大。
如圖2所示,在信道業務請求時刻,衛星根據當前的環境得到環境收益,經驗池中的數目達到一定的量值后,每一次的訓練過程都會從池中隨機的選擇一批數據,并與目標網絡中的Q′一起對Q網絡進行訓練,改變Q值函數,完成衛星通信系統信道資源的靈活分配。

圖2 衛星系統信道分配模型
為便于研究,將衛星與環境的交互看做是離散的時間序列。如圖3所示,衛星從感知到的初始環境S0開始,然后決定做出一個相應的動作a0,環境相應地發生改變到新的狀態S1,并反饋給智能體一個即時的獎勵r1,然后智能體又根據新的狀態S1作出下一個動作a1,環境改變為S2,反饋獎勵r2,交互一直進行下去。

圖3 馬爾科夫決策過程
馬爾科夫決策過程在馬爾科夫過程中加了一個額外的變量:動作a,下一個時刻的狀態St+1取決于當前的狀態St和動作at。
p(st+1st,at,st+2st,at,s0,a0)=p(st+1|st,at)
(15)
式中:p(st+1|st,at)為狀態轉移概率。
當到達終止狀態時,交互過程就結束了,這一輪過程被稱作一個回合(episode)或實驗(trial)。為了應對環境中沒有終止狀態的情況發生,引入一個折扣回報來降低遠期回報的權重[17],其定義為:
(16)
式中:γ∈[0,1]是折扣率。當γ接近于0時,智能體更關注短期的回報;當γ接近于1時,長期回報成為智能體考慮的重點。
3.2.1 狀態空間設計
所有即時用戶分配信道的增益矩陣Wt=[w1,w2,…,wu],即時通信的用戶數目kt∈{k|k=1,2,…,K},當前時刻新請求的用戶的信息Ut。文中的狀態空間表示為:
st=F(Wt,Kt,Ut)
(17)
式中:F表示函數映射關系。為避免和抑制同頻干擾,相鄰的小區不能使用同一信道。波束n對信道的占用情況hup可以表示為:
(18)
當前時刻的波束無可用信道資源時或者所有用戶均有信道資源時,整個系統達到終止狀態。系統沒有達到終止狀態時,衛星將繼續根據當前時刻的可用信道資源進行動態的信道選取分配。
3.2.2 動作空間設計
衛星根據所處的環境和Q網絡,動作依照概率ε選擇最大狀態-動作值Q函數去執行。首先確定狀態St下的可執行動作集合A(St),在本文的場景下,A(St)?M,即可執行動作是可用信道的子集。由此可得出動作at的表達式為:
at={(n,m)|n∈N,m∈A(St)}
(19)
動作at是在波束n和狀態St下可用的信道集合之中,為其分配信道資源m。當前時刻不存在可用信道時,可用信道為空,表示為A(St)=?,這個時候的業務將會被阻塞無法正常進行通信。
3.2.3 收益空間設計
收益是衛星與環境交互過程中的回饋,一方面是對執行動作后的評價,另一方面也是信道資源分配的性能優劣的評估。在最優信道分配中,我們的目的在于降低阻塞發生的次數,提高服務的效率。所以,在文中設計收益與阻塞率呈負相關,收益為0時表示完全不能通信,所有的業務請求均被阻塞。用公式表示為:
r=Rmax(1-Ublock/Uarrival)
(20)
式中:Rmax表示最大的獎賞值,Rmax>0。從式中我們可以看到,衛星通信系統的阻塞率越低,獲得的收益就越大,通信系統的總體性能就越好。
基于3.2節中所述的空間設計,本文基于深度強化學習的衛星信道分配算法的實現過程如下:

輸入:狀態空間S,動作空間A(S),γ,學習速率α,更新間隔G,初始探索概率εinit;1初始化經驗池和相關參數,Q(S,a),W=?,B=?,Nblock=0,Narrival=0;2repeat3t=1,T個業務請求時刻;更新業務到達參數Narrival=Narrival+1和探索概率4ε=max(ε-εgap,εf)5觀測環境,得到即時獎勵r,依據MDP過程狀態定義構建狀態St;6計算當前的新業務波束的動作A(St);7若無信道可用,即A(St)=?,則:8更新阻塞業務參數Nblock=Nblock+1;9由式(20)獲得立即收益值r;10若有信道可以使用,則:11由式(20)獲得立即收益值r;12將St,A(St),r,到經驗池中;13以概率ε隨機選擇動作at∈A(S);14否則,選擇最大Q函數值的信道,即at=argmaxa∈A(St)Q(S,a);15進行信道分配,更新參數W,B;16Q網絡訓練;17在經驗池中隨機選擇一批數據;

18根據式(14)對網絡進行優化訓練;19時間每經過G步對Q網絡復制到目標網絡;20until εf←ε21根據得到的Nblock和Narrival,計算得到Pfail=Nblock/Narrival輸出:最終策率π(S)=argmaxa∈A(St)Q(S,a)和最終的信道分配結果Wt;算法結束
在上述算法中εgap表示衰減因子,εf表示算法最終的探索概率。為了對探索和利用進行折中,本算法采用的是ε貪婪策率(ε-greedy),隨機地以ε概率進行動作。探索是指拋棄已經獲得的信息,嘗試一種新的方法,避免陷入到局部最優化,盡量實現全局最優;利用則是指按照獲得的信息進行決策,充分開發歷史經驗信息的潛力[19]。算法中線性下降,逐漸減小,最終達到εf,算法結束。
本文的仿真基于Matlab2019b實驗平臺,分別選取了不同業務量分布、不同業務到達率作為仿真場景,并與固定信道分配(FCA)、混合信道分配(HCA)和融合波束覆蓋信道動態分配算法(FBC-DCA)進行對比。實驗結果表明,本文所提出的基于深度學習的衛星信道動態分配算法在多種場景下具有很好的性能,所有的場景下均有較低的阻塞率。
該算法仿真中,業務達到是參數為λ的泊松分布數據流(單位:次/業務時刻),業務服務時長是μ的負指數分布(單位:業務時刻)。假定波束為37個,業務傳輸閾值Cth=500 kbps,業務到達率λ次/業務時刻,業務時長隨機變化,服務率μ固定為20個/業務時刻。在神經網絡中為了減少Q網絡訓練過程中出現較大的波動,我們設定較小的學習率α=0.01。DRL-DCA算法的主要仿真參數如表1所示。

表1 DRL-DCA仿真參數表
定義以下2個性能指標,以便更好地對比算法的差別[20-21]:
吞吐量:衛星通信系統中單位時間內成功地傳輸的數據的數量,與算法的性能密切相關。
阻塞率:衛星通信系統中,信道處于繁忙狀態的概率。
如圖4所示,系統吞吐量隨著業務到達率的增加而增大,達到一定數量值后趨于穩定。這是因為在通信信道的數目足量時,單位時間內到達的業務量越多,系統的吞吐量自然愈多。到達率超過某一數值后,由于系統信道數目的限制,吞吐量不再隨著到達率的增加而改變,總體上趨于一個定值。在穩定的狀態下,DRL-DCA的穩定吞吐量約為2.4×107bit,FBC-DCA算法的吞吐量約為2.2×107bit,HCA的吞吐量約為2×107bit,FCA的吞吐量約為1.8×107bit。DRL-DCA的吞吐量較FBC-DCA算法高出0.2×107bit,較FCA高出0.6×107bit,較HCA高出0.4×107bit。在本文的仿真條件及仿真穩定狀態下,DRL-DCA的吞吐量大約是FBC-DCA的1.1倍,是HCA的1.2倍,是FCA的1.3倍。仿真結果表明,本文所提出的DRL-DCA算法能夠有效地提升系統吞吐量,改善通信質量。

圖4 3種算法的吞吐量比較
下面討論本文提出的DRL-DCA算法對于不同業務分布的通信性能。圖5展示了用戶具有不同的業務量的阻塞率,圖6展示了用戶不同業務量需求條件下的平均到達率下的阻塞率。可以看出,通信的阻塞率隨著到達率的增加而增大。按照排隊論知識,在到達率小于服務率μ(20次/時刻)時,衛星信道夠及時處理到達的業務。但當到達率超過系統的服務率μ時,業務就需要排隊等待處理,系統阻塞率就隨之增加。從圖5與圖6的對比中可以發現,用戶具有相同業務量的通信阻塞率要低于不同業務量的阻塞率,這也證實了目前不同業務量條件下通信的嚴峻形勢。在較大到達率時,本文提出的DRL-DCA算法在阻塞率性能上均低于另外3種算法的阻塞率。

圖5 用戶不同業務量的阻塞率

圖6 用戶平均業務量的阻塞率
圖7展示了DRL-DCA算法的收斂性變化趨勢。以λ=100次/時刻作為算法的收斂性分析的仿真場景。從圖中可以看出,在前2 500步內算法的性能沒有明顯的改善,這主要是因為經驗池中必須滿足一定的經驗數量時,才會按照信道分配的經驗對網絡進行訓練,在訓練中,網絡迅速優化,大約在3 000步時算法性能趨于穩定。在多波束衛星的實際運行中,系統將會產生眾多的經驗條目,這些條目會有助于算法的訓練[21],系統也將能夠在短時間內收斂。

圖7 DRL-DCA算法的收斂性分析
本文在強化學習的基礎上,以Q-learning算法為思路進行衛星信道的動態分配,詳細地分析了算法的實現流程,并在仿真參數的設定下對本文所提出的算法進行了實驗仿真,最后通過Matlab2019b仿真得出結果,對本文的算法進行佐證。
仿真結果表明,本文提出的DRL-DCA算法能夠有效地提升衛星通信系統的吞吐量,能夠在較大業務量的情況下,提升系統的吞吐量,降低系統的阻塞率,提升用戶的使用體驗。通過對比4種算法,我們發現不同的業務量將會對系統的通信質量產生重大影響,不同的算法表現出較大的性能差異。總體上來說,本文提出的DRL-DCA算法能夠達到較低的阻塞概率和較高的吞吐量,多波束衛星通信的性能有了實質性的提高。