陳浩,羅棕,杜春,彭雙,李軍
(國防科技大學 電子科學學院,湖南 長沙 410073)
隨著成像衛星技術的不斷發展,社會各領域對成像衛星的使用需求也越來越多,由于衛星資源有限,無法滿足所有對地觀測需求,導致觀測需求沖突經常發生.衛星任務規劃是從眾多的衛星對地觀測請求中選出一個無沖突子集,使得觀測收益最大化.已有研究表明,衛星任務規劃是一個典型的NPhard 問題[1-2],目前尚沒有多項式時間快速算法,大規模情況下,衛星任務規劃具有龐大的解空間,通過隨機搜索得到初始解的方法,需要較長的求解路徑,規劃計算費時費力[3].而衛星繞地球飛行,軌跡和任務均呈現周期性特點,可見歷史規劃方案對當前方案的制定有較大借鑒意義.如果把歷史規劃方案看作訓練數據,這就使得通過構建機器學習模型,從而準確預測當前規劃方案成為了可能,這就是衛星成像任務可調度性預測問題.通過預測得到衛星成像調度結果的方法計算量低,能夠快速獲得任務可調度性.此外預測結果不僅能初步表達最終調度結果、供操作員估算長期規劃效益,還能為規劃算法提供高價值的初始解.因而,衛星成像任務可調度性預測問題受到了學者的廣泛關注.
Wang 等[4]、Tinker 等[5]提出基于案例學習的衛星觀測任務規劃方法,利用衛星規劃歷史數據集進行無監督學習,通過與已知的實例進行比對完成衛星任務規劃.與無監督學習方法相比,監督學習方法具有針對性更強、預測計算更快、泛化能力更好的優點.鑒于此,Li 等[6]提出基于魯棒性決策樹和集成支持向量機的成像觀測任務預測方法,取得了較好的預測效果,但從深度學習視角來看,其預測精度尚有提升空間.白國慶[7]、劉嵩[8]等提出基于全連接(fullyconnected)BP 神經網絡的成像衛星可調度性預測方法,設計了一種由協同任務分配組件、任務調度組件、特征提取組件以及任務可調度性預測組件所構成的組件化求解架構,采用變隱含層節點的集成反向傳播神經網絡集成技術求解成像任務可調度性問題,預測準確率達到85%以上.邢立寧等[9]針對星上任務可調度性預測問題,在分析實際影響成像衛星任務執行因素(如任務重疊度、任務收益、氣象信息等)的基礎上,設計了一種基于BP 神經網絡的預測方法,在衛星狀況正常的情況下具有83%的預測準確率.BP 神經網絡訓練方法成熟,但沒有考慮成像衛星任務可調度性預測問題中成像任務為時序任務的特點,難以建立相隔較遠的兩個成像任務之間的潛在依賴關系.隨著深度學習的興起,循環神經網絡受到了越來越多的關注.相關研究表明[10-11],循環神經網絡(Recurrent Neural Network,RNN)能模仿短期記憶特性,尤其適合對時序數據進行處理.
由于循環神經網絡在時序數據處理上比普通神經網絡性能更優,Peng 等[12]針對星上任務調度問題,提出了基于長短記憶網絡(Long Short-Term Memory,LSTM)的觀測任務可調度性實時預測方法,其使用兩個LSTM 網絡來實現特征提取,再使用一個前饋BP 神經網絡實現衛星自主規劃,但每次僅能決策一個對地觀測任務是否執行.連續的決策是一個多次序貫決策過程,該過程容易導致誤差積累,從而使得預測精確度隨時間的推移而下降.
本文提出一種基于雙向門控循環單元[13-14](Bidirectional Gated Recurrent Unit,Bi-GRU)的成像衛星觀測任務可調度性預測模型,該方法可以有效觀測建模前后任務之間的潛在相互影響,從而一次性實現對多個觀測任務可調度性的準確預測.
為了便于描述衛星對地觀測任務可調度性預測問題,現作如下定義.
定義1 觀測任務:衛星對單個地面目標進行一次有效觀測,也稱為成像任務.每個觀測任務包含多種任務特征,相關符號記為:xi=〈f1,f2,…,fn〉,其中f*為任務特征,n 為特征總數,i 為觀測任務的編號.
定義2 觀測任務序列:觀測任務按照觀測時間窗口開始時間的先后順序排成的序列,相關符號記為:X={xi|i∈[1,N],N∈Z+},N 為序列長度.此外定義{x1,…,xi-1}為xi的前驅任務序列,{xi+1,…,xN}為xi的后繼任務序列.
定義3 成像方案:通過衛星任務規劃系統計算得出的衛星對地成像的觀測方案.
定義4 觀測任務xi的可調度性預測結果記為yi,衛星任務規劃系統真實計算結果記為.“yi=1”表示模型預測xi進入成像方案,“yi=0”則表示模型預測xi未進入成像方案.同理表示衛星任務規劃系統將xi列入成像方案,表示衛星任務規劃系統未將xi列入成像方案.此外定義觀測任務序列X 對應的預測結果為Y={yi|i∈[1,N],N∈Z+},對應的系統規劃結果為Y′={y′i|i∈[1,N],N∈Z+}.
衛星對地觀測任務可調度性預測問題可以描述為:利用衛星任務規劃系統的歷史規劃數據Strain=訓練模型,模擬任務規劃系統的映射關系,預測觀測任務序列集合Stest={Xi|i∈[1,m],m∈Z+}的可調度性.
利用歷史規劃數據預測衛星對地觀測任務的規劃結果實質是一個監督學習過程,而監督學習過程包括特征提取與選擇、學習與訓練、分類與識別.衛星在空間軌道上圍繞地球做周期性運動,與地面目標之間并非時時可見,只有在觀測時間窗口內才可能對該目標實施觀測.除觀測時間窗口約束條件之外,衛星受到其他約束條件的制約,如星上存儲容量、星上能量、衛星動作切換時間、觀測任務重疊度等等.因此,在對衛星觀測任務進行可調度性預測時,需要考慮眾多影響因素.參考文獻[7-12,15-16]中關于成像衛星任務規劃建模約束條件,本文主要考慮以下影響因素和約束條件.
1)優先級:觀測任務的等級,代表觀測任務的收益,優先級越高的觀測任務越優先考慮列入成像方案.觀測任務xi的優先級記為pi∈[1,40],優先級40為最高優先級.本文定義任務規劃優化目標為觀測任務的收益(Fvalue)最大化:

2)觀測持續時間:觀測任務xi的觀測時間窗口開始時間與結束時間之間的時間間隔.中低軌衛星對地面目標的觀測時間窗口非常短,通常只有幾秒鐘到幾十秒鐘.觀測持續時間過短影響觀測任務有效性,過長則會引起資源的損耗,本文定義觀測持續時間di∈[10,59].
3)衛星動作切換時間:成像方案中前一觀測任務xi的觀測結束時間與后一觀測任務xj的觀測起始時間的間隔需要不低于衛星動作切換所用時間tij:

4)任務沖突度:與觀測任務xi發生觀測時間窗口重疊的其他觀測任務的數量.觀測任務的任務沖突度越高,任務規劃難度越大.
5)存儲消耗:衛星執行觀測任務所消耗的星上存儲空間.記衛星在t 時刻的存儲空間為m(t),執行觀測任務xi的存儲消耗為mi,mmax、mmin分別為衛星存儲空間上限和下限.存儲消耗滿足約束條件:

6)能量消耗:衛星執行觀測任務所消耗的星上能量.記衛星在時刻t 的能量值為e(t),在執行觀測任務xi時衛星能量消耗為ei,emax、emin分別為衛星能量上限和下限.能量消耗值ei滿足約束條件:

此外,本文還考慮衛星能量補充的情況:在成像方案相鄰任務xi與xj的任務間隙,記光照條件下的能量補充為eij,滿足約束條件:

考慮到傳感器切換時間Ts(i,j)、衛星能量補充eij都與相鄰任務之間的時間間隔有關,而任務沖突度與觀測時間間隔、觀測持續時間有關.因此本文選取優先級、觀測持續時間、觀測時間間隔、能量變化、存儲變化作為輸入特征.
循環神經網絡(Recurrent Neural Network,RNN)是一類以序列數據為輸入,在序列的演進方向進行遞歸且所有節點(循環單元)按鏈式連接的遞歸神經網絡[14].由于標準的RNN 模型存在梯度消失或梯度爆炸等問題,一些學者提出LSTM[17-18]和GRU[19-20]等門控遞歸神經網絡以增強RNN 的可用性.通常情況下GRU 和LSTM 的性能相似,但是GRU 參數更少,因此更容易收斂.GRU 中每個單元都可以通過重置門和更新門來控制信息的流動,并且在每個時間步都可以將所有的內存內容完全暴露出來.此外,GRU的輸出是為了實現以前的內存狀態和新的候選內存狀態之間的平衡.
Bi-GRU 的基本思想是將規則GRU 中的神經元分為前向層和后向層,分別代表正的時間方向和負的時間方向.通過使用這種結構,很容易捕獲到來自過去和未來的輸入信息對當前狀態的影響.
從機器學習視角來看,衛星對地觀測任務可調度性預測是一個關于時序數據的“多對多”的二分類問題.模型在預測某個觀測任務是否列入成像方案時,需要考察該任務的前驅任務序列和后繼任務序列對當前任務可調度性的影響.利用GRU 的短時記憶能力,能夠很好地建模當前任務與其前驅任務集合或者與后續任務集合之間的潛在關系.因此,我們采用了雙向GRU(Bi-GRU)作為基本單元來構建預測模型,以期能夠讓模型從兩個前后方向對當前任務的前驅/后繼任務集合依賴性進行建模,以提升預測精準度.
模型結構如圖1 所示.基于Bi-GRU 網絡的衛星對地觀測任務可調度性預測模型(Earth Observation Satellite Task Prediction based on Bi-GRU,OTPre)由3 個部分組成,分別是MLP(Multilayer Perceptron)層、Deep Bi-GRU 層、分類層.

圖1 模型結構框圖Fig.1 Model structure block diagram
2.2.1 MLP 層
由圖1 可知,N×5 維的觀測任務序列X 首先進入MLP 層處理,經過L1次非線性變換得到矩陣UMLP.輸入特征的非線性映射可以實現特征的精細劃分,對時序特征提取和分類判斷產生深遠的影響.相關計算公式如下:

式中:W*、b*分別代表每一層的權重矩陣和偏置向量;f 為ReLU 激活函數.最后將MLP 層的輸出矩陣傳遞到Deep Bi-GRU 層.
2.2.2 Deep Bi-GRU 層
由圖1 可知,Deep Bi-GRU 層由N 個Deep Bi-GRU 單元組成,每個Deep Bi-GRU 包含4 層Bi-GRU 單元,每個Bi-GRU 單元包含前向GRU 單元和后向GRU 單元,每個GRU 單元包含hsize個隱含節點.每個GRU 單元的輸入信息來自兩方面,一是來自同一隱含層中前向(后向)GRU 傳過來的信息二是來自上一層傳遞過來的信息

2.2.3 分類層
由圖1 可知,分類層由L2個全連接層組成,負責將Deep Bi-GRU 層的輸出Z 映射為預測概率.相關計算公式為:


為了訓練模型,本文采用交叉熵作為損失函數:

由于本文提出的網絡模型內部參數較多,所以選擇Adam 優化算法來求取使得損失函數最小的最優解.Adam 優化算法[21]同時具備AdaGrad 和RMSProp 算法的優點,適用于解決含大規模數據和參數的優化問題,計算高效且所需的內存少.如算法1 所示,模型輸入訓練數據集Strain和訓練總迭代次數J;步驟1~2 對迭代計數參數j、ω 進行初始化;步驟3從訓練數據選取樣本數據;步驟4~5 利用初始化的參數計算樣本數據的初始化預測結果和平均損失函數值C(0);步驟6~12 對模型進行梯度計算、模型參數更新、預測結果更新、平均損失函數值更新.將損失函數取最小值的模型參數進行保存,重復上述步驟直到迭代循環結束.

本實驗程序在PyCharm 2019.03 編譯器上使用Python+TensorFlow 編寫,計算機配置為Inter(R)Core(TM)i7-9750H CPU @2.60GHz,內存為8.0 GB,操作系統為Windows10.
本次實驗使用STK 軟件計算觀測任務的觀測時間窗口,使用1.2 節所述約束條件構建衛星任務規劃模型并使用遺傳算法作為求解算法,計算結果作為觀測任務的系統規劃結果.本次實驗數據集時間從2017-04-01T 00:00:00~2017-04-01T 23:59:59,共有4 791 組觀測任務序列,每個觀測任務序列中包含100 個觀測任務,其中訓練數據占比60%,驗證數據占比20%,測試數據占比20%.
模型參數設置與實驗效果之間存在緊密的聯系,為了得出模型最佳輸出結果,分別對MLP 層、全連接層數和Deep Bi-GRU 的層數、GRU 隱含節點數的實驗效果進行了測試.MLP 層數對比了層數0、1、2、3;Deep Bi-GRU 層數對比了參數3、4、5;隱含節點數對比了參數20、25、30;最后得出MLP 層L1為2、全連接層L2為3、Deep Bi-GRU 層數為4、隱含節點數為20 時模型分類準確率最高,平均預測準確率為92.21%.
為了評估模型的實驗性能,將本文提出模型OTPre 與廣泛使用和最成功的傳統機器學習分類模型支持向量機(SVM)、隨機森林(RF)、文獻[6]提出的穩健決策樹和標準支持向量機模型(SVM-RF)進行了性能比較.此外,為了與文獻[7-9]提出的模型進行性能比較,本文還選用MLP、GRU 模型作為Base-Line,其中MLP 層數設置為7 層、GRU 參數參照模型OTPre 設置.采用機器學習領域中普遍使用準確率、精確率、召回率、F1值對上述模型進行評價.
表1 為各個模型預測結果的準確率、精確率、召回率、F1值.從表1 可以看出,與SVM、RF、SVM-RF、MLP 相比,本文所提出的方法在各項指標中表現出較為明顯的優勢,在準確率、精確率、召回率、F1值上分別平均高出6.95%、7.66%、10.11%、7.38%,這是因為這些模型難以建立相隔較遠的兩個成像任務之間的潛在依賴關系,對受多元約束(如存儲消耗約束、能量消耗約束)影響的任務關聯關系缺乏必要記憶.而模型OTPre 能更好地捕捉到這種潛在的依賴關系,從而取得了更好的預測效果.

表1 各類模型性能對比Tab.1 Performance comparison of various models %
模型OTPre 與GRU 相比,在準確率、精確率、召回率、F1值上分別高出2.27%、2.36%、3.45%、2.37%,說明雙向循環神經網絡各方面的預測能力更好,更適合衛星對地觀測任務可調度性預測問題求解.
本文選用優先級、觀測持續時間、任務沖突度來測試任務特征與預測準確率之間的趨勢關系.
3.5.1 優先級
圖2(a)表示模型OTPre、GRU、SVM-RF 的觀測任務優先級與預測準確率之間的趨勢關系,通過分析可以得出以下結論.

圖2 優先級、預測準確率與觀測任務數量之間的趨勢關系Fig.2 The trend relationship between priority,prediction accuracy and the task number
1)優先級12~40 的觀測任務呈現優先級越高,預測準確率越高的變化趨勢,這是因為在任務規劃時優先級越高的觀測任務,實際被列入成像方案的概率越高,預測更加容易.
2)優先級1~11 的觀測任務呈現出優先級越高,預測準確率越低的變化趨勢,這是因為優先級越低的觀測任務,實際未列入成像方案的概率越大,預測更為容易.因此,介于高優先級與低優先級之間的觀測任務(中優先級的觀測任務)預測更加困難.如圖2(b)所示,優先級11 是所有優先級中實際規劃上的觀測任務數量與實際未規劃上的觀測任務數量比值最接近1∶1.
3)3 種模型表現的趨勢關系比較相似,均呈現出“V”字型,拐點都在優先級11 附近.
4)模型性能優良與模型對于中優先級觀測任務的預測能力有關,模型學習能力越強,對中等優先級觀測任務預測更加準確.
3.5.2 觀測持續時間
圖3(a)表示模型OTPre、GRU、SVM-RF 的觀測持續時間與預測準確率之間的趨勢關系.通過分析可以得出以下結論.

圖3 觀測持續時間、預測準確率與觀測任務數量之間的趨勢關系Fig.3 The trend relationship between observation duration of tasks,prediction accuracy and the task number
1)通過分析圖3(a)可以得出,在相同觀測持續時間的前提下,模型OTPre 的預測準確率要高于GRU、SVM-RF 模型,說明本文提出的模型針對本文場景具有更加優越的性能.
2)預測準確率曲線整體呈現觀測持續時間越長,預測準確率越低,這種趨勢隨著模型預測性能的提升而呈現弱化的趨勢.
3)預測準確率通常與觀測任務實際規劃情況有關,與優先級表現的趨勢關系相似.通過分析圖3(b)可得,隨著觀測持續時間的增加,實際列入成像方案的任務數量與實際未列入成像方案的任務數量的比值越接近1∶1.這是因為獲取同等收益的情況下觀測持續時間越長,消耗資源越多,需要綜合衡量是否規劃的獲益與資源消耗,判斷和預測都更加復雜.
4)模型性能優良與模型對于高觀測持續時間的觀測任務的預測能力有關,模型學習能力越強,對高任務觀測持續時間的觀測任務預測更加準確.
3.5.3 任務沖突度
圖4(a)表示在模型OTPre、GRU、SVM-RF 中任務沖突度與預測準確率之間的趨勢關系;圖4(b)表示在不同任務沖突度的條件下,實際列入成像方案的觀測任務和實際未列入成像方案的觀測任務所占比例.通過分析可以得到以下結論:
1)通過分析圖4(a)可以得出,在相同任務沖突度的前提下,模型OTPre 在預測沖突的觀測任務的準確率最高,其次是GRU 模型,最后是SVM-RF 模型,這說明循環神經網絡模型更適合衛星成像任務規劃問題,可以對沖突的觀測任務信息進行記憶.同時也說明雙向循環神經網絡模型比單向循環神經網絡模型預測沖突觀測任務的能力更強.
2)通過分析圖4(a)可以得出,模型OTPre 相比于GRU、SVM-RF 模型在任務沖突度為0 時的預測準確率比較接近,但是在任務沖突度≥1 時的預測準確率具有更明顯的優勢.這說明OTPre 模型可以更好地學習到任務的沖突特征.當預測序列沖突任務數量越多,OTPre 模型與GRU 模型相比具有更加明顯的優勢.
3)由圖4(a)可知,OTPre 模型在任務沖突度為1 時的預測準確率要比任務沖突度為0 時的預測準確率更高,這說明OTPre 模型能夠有效發現相鄰任務觀測時間窗的沖突,并根據任務的特征進行準確決策.
4)由圖4(a)可知,高任務沖突度(任務沖突度≥2)的預測準確率要明顯低于低任務沖突度(任務沖突度≤1)的預測準確率.這是因為高任務沖突度的觀測任務數量更多,而實際列入成像計劃的比例更少,如圖4(b)所示,正確預測高任務沖突度的任務難度更高.

圖4 任務沖突度、觀測任務所占比例與預測準確率之間的趨勢關系Fig.4 The trend relationship between task conflict degree,performed tasks and prediction accuracy
本文提出了一種基于Bi-GRU 的衛星觀測任務可調度性預測模型,該模型能夠有效預測建模前后觀測任務之間的潛在依賴關系,充分考慮觀測任務前后之間的影響,一次性預測多個觀測任務的可調度性.實驗中與SVM、RF、SVM-RF、MLP、GRU 等可調度性預測模型進行對比,本文提出的實驗模型在準確率、精確率、召回率和F1值等指標上均表現更優.此外還測試了任務特征對預測準率趨勢的關系.本文針對的是單星對地觀測任務可調度性預測問題,下一步研究方向:
1)將本文模型預測結果作為初始解應用于任務規劃系統中,研究初始解的質量對規劃算法性能的影響.
2)利用多星任務規劃經驗數據,通過機器學習方法學習多星任務規劃算法,實現對多星任務規劃的預測.