王敏竹,羅永華,寧 芊
(四川大學(xué)電子信息學(xué)院,成都 610065)
天地一體化網(wǎng)絡(luò)[1]作為6G 網(wǎng)絡(luò)必不可缺的一部分[2],將是未來通信趨勢(shì)之一。骨干網(wǎng)絡(luò)將接入管理,依靠衛(wèi)星通信系統(tǒng)[3]對(duì)地面通信網(wǎng)絡(luò)進(jìn)行補(bǔ)充[4]。LEO衛(wèi)星在軌道資源等諸多方面有很大優(yōu)勢(shì),Starlink、GW 等星座計(jì)劃通過大量的LEO 衛(wèi)星部署,實(shí)現(xiàn)全地區(qū)全時(shí)覆蓋,文獻(xiàn)[5]提出的3層(GEO/MEO/LEO)Walker星座能夠支持天地一體化網(wǎng)絡(luò)。LEO 衛(wèi)星在帶寬上優(yōu)于GEO 衛(wèi)星[6],但LEO 衛(wèi)星意味著穩(wěn)定通信時(shí)間短,節(jié)點(diǎn)具有高動(dòng)態(tài)性。
軟件定義網(wǎng)絡(luò)(software defined networking,SDN)是一種采用集中控制策略的網(wǎng)絡(luò)架構(gòu),其數(shù)據(jù)平面和控制平面分離,實(shí)現(xiàn)全局路由策略的動(dòng)態(tài)調(diào)整。利用SDN 控制器[7]可以制定路由策略,能更容易地構(gòu)建全網(wǎng)通信狀態(tài)表,應(yīng)對(duì)突發(fā)情況能力更強(qiáng)、更具時(shí)效性。
天地一體化進(jìn)程中,衛(wèi)星通信網(wǎng)絡(luò)中拓?fù)涞母邉?dòng)態(tài)性、流量的不均勻分布等因素使傳統(tǒng)路由策略無法適應(yīng)星地鏈路。為解決上述問題,研究人員嘗試將SDN 應(yīng)用到該領(lǐng)域,文獻(xiàn)[8]對(duì)SDN 網(wǎng)絡(luò)中衛(wèi)星網(wǎng)絡(luò)的問題進(jìn)行了建模;文獻(xiàn)[9]將SDN 和ICN 應(yīng)用于衛(wèi)星網(wǎng)絡(luò)任務(wù)部署。但是特定的網(wǎng)絡(luò)環(huán)境需要特定的策略;文獻(xiàn)[10]中利用整數(shù)線性規(guī)劃和遺傳算法得到SND 部署方案,最大化整個(gè)網(wǎng)絡(luò)的負(fù)載均衡;文獻(xiàn)[11]通過Q-學(xué)習(xí)解決SDN 負(fù)載均衡的問題;文獻(xiàn)[12]提出了一種通過最小化所有本地控制器的最大負(fù)載的方案。這些基于SDN 的負(fù)載均衡方案都依賴于SDN 節(jié)點(diǎn)部署策略,高動(dòng)態(tài)拓?fù)浣Y(jié)構(gòu)可被分割成時(shí)序的靜態(tài)網(wǎng)絡(luò)切片[13],從而構(gòu)成拓?fù)浔恚欢恳淮瓮負(fù)淝袚Q都需要特定的SDN 節(jié)點(diǎn)部署策略,而傳統(tǒng)的由先驗(yàn)知識(shí)去配置SDN節(jié)點(diǎn)的方式已顯得力不從心。
近年來,深度強(qiáng)化學(xué)習(xí)活躍在路徑規(guī)劃、路由決策等領(lǐng)域,通過構(gòu)建馬爾可夫決策過程(Markov decision processes,MDP)不斷學(xué)習(xí),從而得到基于貪心思想的決策。電力網(wǎng)絡(luò)和通信網(wǎng)絡(luò)在節(jié)點(diǎn)之間的拓?fù)潢P(guān)系和鏈路的流量傳輸特性上有相似之處,文獻(xiàn)[14]和文獻(xiàn)[15]都基于深度確定性策略梯度(deep deterministic policy gradient,DDPG)提出了電壓控制框架和功率控制框架,自適應(yīng)地解決電壓波動(dòng)和提高能源效率等問題;文獻(xiàn)[16]提出將遷移學(xué)習(xí)和強(qiáng)化學(xué)習(xí)相結(jié)合以解決電網(wǎng)動(dòng)態(tài)功率分配問題;文獻(xiàn)[17]提出基于DDPG 的VNF 遷移策略,使得資源利用率提高。相較于傳統(tǒng)深度學(xué)習(xí)和機(jī)器學(xué)習(xí),深度強(qiáng)化學(xué)習(xí)能在做出控制決策的同時(shí)快速應(yīng)對(duì)突發(fā)情況,也能在SDN 控制平面自適應(yīng)地得到SDN節(jié)點(diǎn)部署策略。
在此基礎(chǔ)上,針對(duì)高動(dòng)態(tài)拓?fù)浣Y(jié)構(gòu),本文提出了一種基于預(yù)訓(xùn)練的深度確定性策略梯度(Pre-trained deep deterministic policy gradient,P-DDPG)的SDN 部署策略配置框架。該框架把高動(dòng)態(tài)拓?fù)浞指顬闀r(shí)序的多個(gè)拓?fù)洌瑓⒖歼w移學(xué)習(xí)的思想,通過對(duì)深度強(qiáng)化學(xué)習(xí)模型中神經(jīng)網(wǎng)絡(luò)的權(quán)重進(jìn)行預(yù)訓(xùn)練及遷移,提高求解不同網(wǎng)絡(luò)拓?fù)涞腟DN節(jié)點(diǎn)部署策略的效率。
相比于地面網(wǎng)絡(luò),衛(wèi)星組網(wǎng)的加入與補(bǔ)充能夠?qū)Φ孛婺繕?biāo)實(shí)現(xiàn)全覆蓋。把網(wǎng)絡(luò)拓?fù)渲行l(wèi)星節(jié)點(diǎn)高動(dòng)態(tài)性看作每一個(gè)時(shí)隙相對(duì)靜止的拓?fù)浣Y(jié)構(gòu),針對(duì)不同的網(wǎng)絡(luò)結(jié)構(gòu)可以由優(yōu)化算法給出特定網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)下的SDN節(jié)點(diǎn)部署策略。
對(duì)于網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),可用有向無環(huán)圖(directed acyclic graph,DAG)來表示。定義一個(gè)鄰接矩陣E∈Rn×n來表示n個(gè)節(jié)點(diǎn)之間的連通性,鄰接矩陣中的每個(gè)元素Ei,j∈E都表示一條鏈路。把骨干網(wǎng)絡(luò)中的節(jié)點(diǎn)、基站、天基網(wǎng)絡(luò)的衛(wèi)星節(jié)點(diǎn)對(duì)應(yīng)到網(wǎng)絡(luò)拓?fù)渲械墓?jié)點(diǎn)Ni,不同節(jié)點(diǎn)之間的連通性由源節(jié)點(diǎn)Ni和目的節(jié)點(diǎn)Nj之間的邊表示。每個(gè)節(jié)點(diǎn)之間擁有兩條鏈路,分別是Ei,j和Ej,i,Ei,j表示數(shù)據(jù)流量從Ni流向Nj。
強(qiáng)化學(xué)習(xí)中,通常定義用馬爾科夫決策過程(MDP)來對(duì)實(shí)際問題進(jìn)行抽象建模,通常把MDP定義為一個(gè)四元組{S,A,ρ,f}。
S為所有環(huán)境狀態(tài)的集合,st∈S表示整個(gè)網(wǎng)絡(luò)在t時(shí)刻所處的狀態(tài),形式為流量分配矩陣st∈Rn×n,其中flowi,j∈st表示從節(jié)點(diǎn)i流向節(jié)點(diǎn)j的流量大小。
A為網(wǎng)絡(luò)可執(zhí)行的動(dòng)作集合,at∈A表示在t時(shí)刻整個(gè)網(wǎng)絡(luò)的動(dòng)作,即SDN 部署策略,把節(jié)點(diǎn)定義為鏈路中轉(zhuǎn)站,通過轉(zhuǎn)發(fā)流量實(shí)現(xiàn)節(jié)點(diǎn)之間的數(shù)據(jù)傳輸。若節(jié)點(diǎn)Nm和Nn節(jié)點(diǎn)在物理鏈路中不連通,但Nk節(jié)點(diǎn)同時(shí)連通了Nm和Nn節(jié)點(diǎn),且Nk節(jié)點(diǎn)被部署為SDN 節(jié)點(diǎn),則Nm節(jié)點(diǎn)到Nn節(jié)點(diǎn)的數(shù)據(jù)流量可以由Nk節(jié)點(diǎn)轉(zhuǎn)發(fā)完成,流量途經(jīng)路徑Routem,n=Em,k+Ek,n。
f(st,at)表示網(wǎng)絡(luò)在狀態(tài)st下執(zhí)行動(dòng)作at轉(zhuǎn)移到下一狀態(tài)st+1的概率。
ρ(st,at)表示網(wǎng)絡(luò)在狀態(tài)st執(zhí)行動(dòng)作at獲得的回報(bào)值rt~ρ(st,at)。與環(huán)境交互,從網(wǎng)絡(luò)拓?fù)涞玫焦?jié)點(diǎn)Nm到Nn的鏈路集合,從流量需求矩陣中獲得需要傳輸?shù)牧髁看笮∽鳛榧s束條件,求解流量分配矩陣st+1∈Rn×n,元素flowm,n∈st+1表示節(jié)點(diǎn)Nm到Nn在t+1時(shí)刻的流量,用t時(shí)刻鏈路中的流量和鏈路最大容量的比值flowm,n/volumem,n來計(jì)算當(dāng)前時(shí)刻回報(bào)值rt。
利用DDPG可以有效地解決特定拓?fù)湎耂DN節(jié)點(diǎn)部署決策的問題,但在本文的星地網(wǎng)絡(luò)場(chǎng)景中,拓?fù)渚哂袝r(shí)序性、高變動(dòng)性的特點(diǎn),因此,提出一種通過預(yù)訓(xùn)練和遷移學(xué)習(xí)思想改進(jìn)DDPG 從而提高拓?fù)涓淖冎驛ctor-Critic 網(wǎng)絡(luò)訓(xùn)練效率的P-DDPG方法。
2.1.1 P-DDPG
如圖1 所示,P-DDPG 方法對(duì)應(yīng)不同的拓?fù)浣Y(jié)構(gòu)時(shí),采用權(quán)重遷移和繼承經(jīng)驗(yàn)緩沖池的方式來學(xué)習(xí)預(yù)訓(xùn)練中前序訓(xùn)練中的知識(shí)。P-DDPG算法由預(yù)訓(xùn)練遷移得到權(quán)重作為Actor-Critic 網(wǎng)絡(luò)的初值,經(jīng)驗(yàn)緩沖池也繼承自預(yù)訓(xùn)練,在賦予Actor-Critic 網(wǎng)絡(luò)初值之后,對(duì)拓?fù)浜土髁啃畔⑦M(jìn)行學(xué)習(xí)訓(xùn)練,由Actor 網(wǎng)絡(luò)得到動(dòng)作即SDN部署策略,與環(huán)境交互之后得到新的狀態(tài)放到經(jīng)驗(yàn)緩沖池中。取用經(jīng)驗(yàn)緩沖池中的數(shù)據(jù)訓(xùn)練Actor-Critic預(yù)估網(wǎng)絡(luò),Actor-Critic目標(biāo)網(wǎng)絡(luò)由預(yù)估網(wǎng)絡(luò)的權(quán)重軟更新得到,訓(xùn)練學(xué)習(xí)之后,累計(jì)reward值將會(huì)收斂。
圖1 P-DDPG SDN節(jié)點(diǎn)部署決策框架
2.1.2 權(quán)重遷移及經(jīng)驗(yàn)緩沖池繼承
不同拓?fù)鋵?duì)應(yīng)的策略及環(huán)境交互是不同的,但流量矩陣即狀態(tài)信息st、SDN 部署策略即動(dòng)作信息at的部分特征是相似的,因此先對(duì)一個(gè)Actor-Critic 網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練之后,把預(yù)訓(xùn)練中神經(jīng)網(wǎng)絡(luò)的權(quán)重繼承到新的Actor-Critic 網(wǎng)絡(luò)中,作為初值在新的拓?fù)湎逻M(jìn)行訓(xùn)練學(xué)習(xí),預(yù)訓(xùn)練的知識(shí)將會(huì)通過遷移的方式對(duì)當(dāng)前拓?fù)涞腁ctor-Critic網(wǎng)絡(luò)訓(xùn)練產(chǎn)生影響。
訓(xùn)練初期經(jīng)驗(yàn)緩沖池繼承于預(yù)訓(xùn)練中的信息即batcht=(st,at,rt,st+1)。讓當(dāng)前時(shí)間切片拓?fù)鋵?duì)應(yīng)的Actor-Critic 獲取預(yù)訓(xùn)練中的學(xué)習(xí)記憶,更快地學(xué)習(xí)特征提取、決策判斷。
Q-學(xué)習(xí)算法可以用來解決SDN 節(jié)點(diǎn)部署的問題,但本文的狀態(tài)空間和動(dòng)作空間都是連續(xù)值集合,而DDPG 能在連續(xù)狀態(tài)空間給出SDN節(jié)點(diǎn)部署決策,經(jīng)驗(yàn)放回池從一定程度上提高了DDPG 學(xué)習(xí)的穩(wěn)定性。DDPG 中的預(yù)估網(wǎng)絡(luò)(eval)和目標(biāo)網(wǎng)絡(luò)(target)如圖2所示,分別構(gòu)建各 自 的Actor-eval、Actor-target 和Critic-eval、Critic-target 網(wǎng)絡(luò)。通過訓(xùn)練eval 網(wǎng)絡(luò)去不斷預(yù)估當(dāng)前狀態(tài)信息下的動(dòng)作和Q值,使得整個(gè)算法在自監(jiān)督模式下不斷收集更高的reward 值。而target 網(wǎng)絡(luò)作為實(shí)際動(dòng)作產(chǎn)生環(huán)節(jié),其網(wǎng)絡(luò)模型中的權(quán)重參數(shù)由eval 網(wǎng)絡(luò)中對(duì)應(yīng)的參數(shù)軟更新得到。
圖2 深度確定性策略梯度(DDPG)算法
2.2.1 Actor-Critic網(wǎng)絡(luò)
Actor 網(wǎng)絡(luò)是動(dòng)作生成網(wǎng)絡(luò),狀態(tài)信息輸入Actor 網(wǎng)絡(luò)產(chǎn)生動(dòng)作at,輸入到Critic 網(wǎng)絡(luò)中。Critic 網(wǎng)絡(luò)的作用是預(yù)估Q值,輸入動(dòng)作at和狀態(tài)st得到Q值。優(yōu)化器優(yōu)化Critic 網(wǎng)絡(luò)使Q值不斷上升,達(dá)到用自監(jiān)督的方式使得回報(bào)值上升的目的。
根據(jù)1.2小節(jié)中馬爾科夫決策過程,Qt+1(st,at,rt)的值可以通過st,at,rt由公式(1)計(jì)算得到,帶入計(jì)算rt的公式rt~ρ(st,at),Qt+1可由公式(2)計(jì)算得到:
其中:θ表示估計(jì)Q網(wǎng)絡(luò)的權(quán)重參數(shù);at是Actor網(wǎng)絡(luò)輸出得到的動(dòng)作;st是狀態(tài)信息。
2.2.2 預(yù)估網(wǎng)絡(luò)(eval)的權(quán)重更新
深度強(qiáng)化學(xué)習(xí)中,Q值則通過Critic-eval 網(wǎng)絡(luò)中估計(jì)Q值近似得到,定義Q值的均方誤差(MSE)作為損失函數(shù),則Critic-eval 網(wǎng)絡(luò)的損失函數(shù)可以表示為
Critic網(wǎng)絡(luò)的輸入中包含了Actor網(wǎng)絡(luò)的輸出at,所以Critic-eval 網(wǎng)絡(luò)的梯度反向傳播到輸入層,at部分的梯度繼續(xù)訓(xùn)練Actor-eval網(wǎng)絡(luò)。
2.2.3 經(jīng)驗(yàn)緩沖池
每一次at與環(huán)境交互得到的batcht=(st,at,rt,st+1)放入經(jīng)驗(yàn)緩沖池中。每一次Actor-Critic網(wǎng)絡(luò)訓(xùn)練都從經(jīng)驗(yàn)緩沖池中取出N條,此時(shí)的損失函數(shù)由公式(3)變成
根據(jù)公式(4)中的損失函數(shù)訓(xùn)練Critic-eval網(wǎng)絡(luò),若經(jīng)驗(yàn)緩沖池已滿,則刪除已經(jīng)取出的當(dāng)前batcht,保證經(jīng)驗(yàn)緩沖池不會(huì)因?yàn)榇罅康挠?xùn)練而冗余。
本文實(shí)驗(yàn)?zāi)M了12個(gè)節(jié)點(diǎn)的星地網(wǎng)絡(luò)拓?fù)?,其中衛(wèi)星節(jié)點(diǎn)為3個(gè)(動(dòng)態(tài)變化節(jié)點(diǎn)),網(wǎng)絡(luò)中流量滿足泊松分布,SDN 部署率為33.34%,模擬節(jié)點(diǎn)動(dòng)態(tài)變化出現(xiàn)不同時(shí)序拓?fù)洌瑢⑵渲凶畛醯囊粋€(gè)時(shí)序拓?fù)渥鳛轭A(yù)訓(xùn)練得到Actor-Critic 網(wǎng)絡(luò)的權(quán)重和經(jīng)驗(yàn)緩沖池,每條鏈路的最大鏈路容量為80 Mbps。
本文評(píng)估提出的P-DDPG 算法的收斂性,采用傳統(tǒng)DDPG 算法與P-DDPG 算法相對(duì)比,其中具體參數(shù)設(shè)置如表1所示。算法通過回報(bào)值來衡量每一次step 給出的SDN 部署策略是否使得網(wǎng)絡(luò)整體負(fù)載更加均衡,通過每個(gè)episode 中steps累計(jì)的回報(bào)值來衡量一次episode 給出更優(yōu)SDN部署策略的概率。
表1 實(shí)驗(yàn)參數(shù)
兩種方法的回報(bào)值如圖3所示,為了方便對(duì)比兩種方法的累計(jì)回報(bào)值,本文將累計(jì)回報(bào)值做了歸一化處理。從圖3 可以看出,reward 曲線反映了隨著訓(xùn)練次數(shù)的增加,單次episode累計(jì)的回報(bào)值上升。時(shí)序一、時(shí)序二在起始點(diǎn)P-DDPG的回報(bào)值比傳統(tǒng)DDPG高0.1,而收斂之后前者比后者高0.3。這是因?yàn)槔^承預(yù)訓(xùn)練權(quán)重作為后續(xù)訓(xùn)練權(quán)重的初值和遷移經(jīng)驗(yàn)緩沖池,繼承了狀態(tài)信息的特征提取和根據(jù)特征做出SDN節(jié)點(diǎn)部署策略的知識(shí)。
圖3 收斂性比較
本小節(jié)對(duì)P-DDPG 方法做出的SDN 節(jié)點(diǎn)部署策略進(jìn)行性能分析和有效性分析。其中,有效性分析SDN 部署策略與環(huán)境交互之后,各鏈路中的流量分配情況,比較其訓(xùn)練起始點(diǎn)與收斂之后的負(fù)載均衡效果。
SDN 節(jié)點(diǎn)部署完成之后,流量會(huì)重新進(jìn)行分配,使得網(wǎng)絡(luò)向著整體負(fù)載均衡方向優(yōu)化,各條鏈路分配的流量越平均,則負(fù)載均衡的效果越好。如表2 所示,Topo0 的最大鏈路流量在訓(xùn)練后比起始點(diǎn)少0.55×105,而Topo2 的最大鏈路流量在訓(xùn)練后也比起始點(diǎn)少1.02×105,說明P-DDPG 能夠通過學(xué)習(xí)訓(xùn)練給出更優(yōu)的SDN節(jié)點(diǎn)部署策略,使得網(wǎng)絡(luò)整體負(fù)載更加均衡。并且,訓(xùn)練之后各條鏈路流量的方差也隨之降低,方差越小說明各鏈路的流量更加均衡。因此P-DDPG能夠針對(duì)變動(dòng)之后的拓?fù)浣o出相對(duì)應(yīng)的SDN 節(jié)點(diǎn)部署策略,并通過學(xué)習(xí)訓(xùn)練優(yōu)化SDN節(jié)點(diǎn)部署策略使得網(wǎng)路整體負(fù)載更加均衡。
表2 流量分配對(duì)比
DDPG 方法與P-DDPG 方法的累計(jì)回報(bào)如表3 所示,P-DDPG 在起始點(diǎn)累計(jì)回報(bào)值比傳統(tǒng)DDPG 方法高出509.442,P-DDPG 的最大累計(jì)回報(bào)比傳統(tǒng)DDPG高出796.947,平均每次step高出0.797,收斂后平均累計(jì)回報(bào)P-DDPG 也比傳統(tǒng)DDPG 高出644.758,平均每次step 高出0.645。說明P-DDPG 能夠比DDPG 在每一步獲得更多的回報(bào)值,能夠給出更優(yōu)的SDN 節(jié)點(diǎn)部署策略來使網(wǎng)絡(luò)負(fù)載更加均衡。
表3 P-DDPG與DDPG算法累計(jì)回報(bào)對(duì)比
累計(jì)回報(bào)上升率方面,P-DDPG 比傳統(tǒng)DDPG 高出0.11,這說明繼承權(quán)重和遷移經(jīng)驗(yàn)緩沖池能夠使得每一次訓(xùn)練中steps 給出更優(yōu)SDN部署節(jié)點(diǎn)的概率提高了,所以獲得高回報(bào)值的概率也隨之提高了,從而使得每一步episode 在累計(jì)回報(bào)時(shí)有更高的上升率。
本文提出了一種基于預(yù)訓(xùn)練的深度強(qiáng)化學(xué)習(xí)框架P-DDPG算法,用于給出星地網(wǎng)絡(luò)一體化場(chǎng)景下SDN 節(jié)點(diǎn)部署策略,提升網(wǎng)絡(luò)整體負(fù)載均衡水平。首先利用初始拓?fù)溥M(jìn)行Actor-Critic網(wǎng)絡(luò)預(yù)訓(xùn)練,得到其網(wǎng)絡(luò)權(quán)重及經(jīng)驗(yàn)緩沖池;然后獲取變化之后的拓?fù)浣Y(jié)構(gòu),繼承預(yù)訓(xùn)練的網(wǎng)絡(luò)權(quán)重作為新的Actor-Critic 網(wǎng)絡(luò)權(quán)重的初值,并遷移預(yù)訓(xùn)練中的經(jīng)驗(yàn)緩沖池,來有效應(yīng)對(duì)衛(wèi)星節(jié)點(diǎn)高速移動(dòng)導(dǎo)致的星地網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的高動(dòng)態(tài)性問題,對(duì)網(wǎng)絡(luò)整體的負(fù)載均衡進(jìn)行優(yōu)化,而不用從頭開始訓(xùn)練。實(shí)驗(yàn)結(jié)果表明,P-DDPG 能夠給出并優(yōu)化星地網(wǎng)絡(luò)場(chǎng)景下SDN節(jié)點(diǎn)部署策略,相較于傳統(tǒng)DDPG 而言,P-DDPG在拓?fù)鋾r(shí)序變化之后學(xué)習(xí)訓(xùn)練中累計(jì)回報(bào)的獲取速度更快。綜上所述,P-DDPG 框架能夠更加高效地解決星地網(wǎng)絡(luò)場(chǎng)景下隨拓?fù)鋾r(shí)序變動(dòng)快速部署SDN節(jié)點(diǎn)使得網(wǎng)絡(luò)整體負(fù)載均衡的問題。