劉成龍 胡廣朋
(江蘇科技大學(xué)計算機學(xué)院 鎮(zhèn)江 212100)
隨著人工智能的發(fā)展,從貝葉斯估計到近階段的深度學(xué)習(xí),軍事智能的指揮決策研究者們在將深度學(xué)習(xí)應(yīng)用于自主決策上也展開了許多研究。就目前來說,國內(nèi)外關(guān)于自主決策的方法探討是處于起步階段,絕大部分研究工作采用半監(jiān)督或監(jiān)督的深度學(xué)習(xí)方法,但是數(shù)據(jù)的缺乏限制了方法后續(xù)的發(fā)展。雖然之后也有人利用深度學(xué)習(xí)方法對自主決策進行進一步的研究,但是相關(guān)方面的研究也還在理論探索,要想有具體的實際應(yīng)用,還是要有比較長的路要走。
傳統(tǒng)典型的方法是胡桐清、陳亮等在軍事智能決策的理論與實踐中提出的軍事專家支持系統(tǒng)[1],該系統(tǒng)建立了多條規(guī)則和一個定量與定性相融合的有效推演機制,可以自動生成作戰(zhàn)決策的方案,根據(jù)方案,能夠幫助指揮員進行決策,但方案需要一定的專業(yè)知識,存在一些局限性。朱豐等在對戰(zhàn)場態(tài)勢評估的研究討論中[2]利用一系列技術(shù)對目的識別、決策推演等多方面展開了研究。李耀宇等曾在國防科技大學(xué)學(xué)報上發(fā)表文章[3],利用逆向強化學(xué)習(xí)的方法,優(yōu)化方案,前提條件是不確定條件策略、地形的戰(zhàn)場火力分布。陳希亮、張永亮在基于深度強化學(xué)習(xí)的陸軍分隊?wèi)?zhàn)術(shù)決策問題研究[4]中提出了一種決策框架,利用逆向強化學(xué)習(xí)在戰(zhàn)場行為決策上收獲頗豐。喬永杰,王欣九,孫亮等提出利用陸軍指揮所模型自主生成作戰(zhàn)計劃時間參數(shù)的方法[5],建立服務(wù)框架,進而有了自動生成作戰(zhàn)計劃的方案。中科院研制的“SASIA-先知V1.0”在全國兵棋推演大賽上取得了較好的成績,先知V1.0所采用的模型是由知識和數(shù)據(jù)共同建立的,同時也證明了深度學(xué)習(xí)在軍事對抗領(lǐng)域大有可為。
文章針對對手行為分析構(gòu)建預(yù)測模型,進而采用基于自適應(yīng)增強的規(guī)劃識別方法,利用此算法能夠?qū)⒖捎^察到的對手行為作為唯一已知條件,實現(xiàn)對目標(biāo)的預(yù)測。該方法對可觀察行為不斷訓(xùn)練弱預(yù)測器,最終組成強預(yù)測器。并以aerial bombing operations數(shù)據(jù)集為例設(shè)計實驗,驗證方法可行性。
實現(xiàn)沙盤推演分析的模型如圖1所示。首先策略規(guī)劃器將對手的動作或狀態(tài)的改變作為觀察對象,推理出對手規(guī)劃和所有的目標(biāo),不僅如此,策略規(guī)劃器會依據(jù)預(yù)測的對手規(guī)劃做出應(yīng)對動作,然后策略規(guī)劃器向動作規(guī)劃器下達指令,動作規(guī)劃器會依照指令,進行有效的信息決策,接著模型要依據(jù)決策進行行為模擬,同時將收集到的有效信息發(fā)給動作處理器,動作處理器后續(xù)就會將收到的有效信息傳回最初的策略規(guī)劃器,達到破壞對手規(guī)劃和防御的目的。
規(guī)劃識別方法是整個沙盤推演的核心,規(guī)劃識別方法是整個行為分析網(wǎng)絡(luò)的核心,整個分析過程以特征抽象處理后的數(shù)據(jù)特征作為輸入,通過識別算法分析尋找異常的操作行為,分析各行為之間相互轉(zhuǎn)換的概率。在對對手規(guī)劃的分析時間,不斷完善規(guī)劃應(yīng)對,達到應(yīng)對對手規(guī)劃的預(yù)測識別。
圖1 沙盤推演分析框架
策略規(guī)劃器根據(jù)對手行為進行的分析會影響規(guī)劃識別算法對最終結(jié)果的預(yù)測,常見的策略規(guī)劃器方法主要有隱馬爾可夫、隨機快速搜索樹(RRT)以及Adaptive boosting等。
Adaptive boosting又被稱為自適應(yīng)增強,其基礎(chǔ)的想法就是利用相同的訓(xùn)練集去訓(xùn)練各不相同的弱分類器,接著將這些集合起來,構(gòu)成一個新的分類器,也稱為強分類器,記為H(x)。定義一個樣本(xi,yi),則訓(xùn)練樣xi為樣本類別觀測值,yi是xi的樣本類別標(biāo)識,滿足yi=f(xi),f是要學(xué)習(xí)的目標(biāo)概念的集合。各個樣本的權(quán)值為D(1),…D(n),D(i)>0,1≤i≤n。
基本過程分為以下幾步:第一,對初始的訓(xùn)練數(shù)據(jù)進行賦值,假設(shè)存在M個訓(xùn)練數(shù)據(jù),那么每一個樣本的初始權(quán)值相同,都為1/M。第二,進行訓(xùn)練。在過程中,如果樣本被錯誤分類,那么它的權(quán)重增加;如果被正確分類,權(quán)重減少。權(quán)重重新賦值后就會應(yīng)用于下次訓(xùn)練,如此迭代下去,第三,將每次迭代得到的分類器融合起來,作為最終的決策分類器,也稱為強訓(xùn)練器。融合的規(guī)則是損失函數(shù)(loss function)最小化原則,按照此函數(shù)的負梯度方向不斷地循環(huán)。定義在第t輪迭代時,第i個訓(xùn)練樣本(xi,yi)的權(quán)重分布為Dt(i)。弱學(xué)習(xí)算法的任務(wù)就是根據(jù)訓(xùn)練樣本的分布及權(quán)重Dt完成一個弱分類器ht:X→R的學(xué)習(xí),最簡單情況下ht是二值的,好壞由誤判率εt進行衡量。
經(jīng)過T次訓(xùn)練學(xué)習(xí)后,得到一系列弱分類器h1,h2,h3,…,hT。可以用累加模型來定義強分類器:
其中,x是特征向量;ht(x)是第t次迭代得到的弱分類器;αt是ht(x)的權(quán)重。AdaBoost的核心思想就是按照損失函數(shù)的負梯度方向不斷地循環(huán),融合迭代所得到的分類器,指數(shù)損失函數(shù)為
其中,t,y分別為循環(huán)更新次數(shù)和種別標(biāo)記,通過不斷地更新權(quán)值,求得最終強分類器的最優(yōu)解。
針對于復(fù)雜的沙盤推演環(huán)境,文章提出基于自適應(yīng)增強的的規(guī)劃識別方法(Adaptive Boosting Planning Recognition,ABPR)。自適應(yīng)增強算法的核心思想是重視誤差大的學(xué)習(xí)樣本,改變其分配權(quán)重并再次進行訓(xùn)練,得到多個誤差較小的弱預(yù)測器,再組成一個強預(yù)測器。根據(jù)自適應(yīng)增強算法的原理,將規(guī)劃識別方法看作弱預(yù)測器。首先用規(guī)劃識別算法對樣本不斷的訓(xùn)練,如果得到的預(yù)測誤差不在范圍之內(nèi),那么對該樣本重新賦值,并計算第t個規(guī)劃識別弱預(yù)測器的權(quán)重,得到T個規(guī)劃識別弱預(yù)測器、權(quán)重,將得到的權(quán)重進一步融合,得到一個強預(yù)測器,利用最終預(yù)測器,輸出規(guī)劃預(yù)測。
ABPR方法在沙盤推演中的應(yīng)用主要由數(shù)據(jù)預(yù)處理過程、分析模型建立并調(diào)整模型參數(shù)、識別判斷當(dāng)前的對手規(guī)劃和對敵意規(guī)劃的預(yù)測四個部分組成。在本文提出的方法中,首先對選用的數(shù)據(jù)集進行數(shù)據(jù)預(yù)處理,包括對冗余信息的刪減和不規(guī)范數(shù)據(jù)的規(guī)范化;然后將數(shù)據(jù)集作為Agent的行為進行觀察并對分析模型進行優(yōu)化;接著輸入一組對手行為數(shù)據(jù),提取領(lǐng)域中的(近期、中期或者遠期)目標(biāo),將這些目標(biāo)分解以降低其抽象層,并將其擴展進規(guī)劃中,重復(fù)這樣的動作確定具體動作,直至規(guī)劃中只存在原始動作。最后預(yù)測層對概率值最大的數(shù)據(jù)序列做狀態(tài)信息的預(yù)測,獲取對行為的預(yù)測值。如在沙盤推演中,占領(lǐng)對手領(lǐng)地這個目標(biāo)是明確的,因為占領(lǐng)陣地明確指出,但是何時占領(lǐng)、如何占領(lǐng)等問題沒有具體描述,假設(shè)給定以下前提條件:有足夠的兵力,并且已經(jīng)在對手陣地,那么利用兵力占領(lǐng)陣地就可以直接執(zhí)行,這是一個具體操作。
根據(jù)以上分析,自適應(yīng)增強改進的規(guī)劃識別算法預(yù)測具體步驟如下。
1)導(dǎo)入數(shù)據(jù)樣本,初始化樣本權(quán)重。
其中,Di是初始權(quán)重;m是樣本個數(shù)。
2)設(shè)置要訓(xùn)練的規(guī)劃識別弱預(yù)測器個數(shù)T和模型結(jié)構(gòu),用規(guī)劃識別算法對樣本不斷的訓(xùn)練。
3)計算規(guī)劃識別弱預(yù)測器預(yù)測訓(xùn)練樣本的預(yù)測誤差ec。
4)將預(yù)測誤差ec與預(yù)設(shè)誤e進行比較,調(diào)整訓(xùn)練樣本權(quán)重Di。
5)計算第t個規(guī)劃識別弱預(yù)測器的預(yù)測誤差:
6)計算第t個規(guī)劃識別弱預(yù)測器的權(quán)重:
其中,Ct是第t個規(guī)劃識別預(yù)測器權(quán)重;et是第t個規(guī)劃識別預(yù)測器的預(yù)測誤差。
7)計算下一輪迭代時訓(xùn)練樣本的權(quán)重:
其中,Bt是歸一化因子。
若未達到迭代次數(shù),返回第2)步,進行下一次迭代,直到迭代T次后,停止訓(xùn)練。
8)輸出強預(yù)測器。經(jīng)過T次訓(xùn)練后,生成T組弱預(yù)測函數(shù)ft(x)根據(jù)權(quán)重分布組合生成強預(yù)測函數(shù):
其中,F(xiàn)(x)是強預(yù)測函數(shù),ft(x)是弱預(yù)測函數(shù)。
本次實驗主要針對空軍任務(wù)中飛機狀態(tài)進行分析。主要的樣本來自于aerial bombing operations數(shù)據(jù)集。該數(shù)據(jù)集由二戰(zhàn)的數(shù)字化紙質(zhì)任務(wù)報告組成。每條記錄都包含了date(日期)、conflict(沖突)、geographic location(地理位置)和飛機的狀態(tài)數(shù)據(jù)。并從數(shù)據(jù)集中隨機抽取50條數(shù)據(jù)定義為對手進攻性行為,以此模擬進攻行為。并且該數(shù)據(jù)集的數(shù)據(jù)被按塊分割,在進行驗證實驗時,將數(shù)據(jù)塊中的三分之一作為訓(xùn)練集,剩余的數(shù)據(jù)塊作為測試集,最后分析本文算法在對飛機不同狀態(tài)下的行為目的預(yù)測的效果。
用規(guī)劃識別方法訓(xùn)練測試,誤差大于0.005的樣本視為強化訓(xùn)練樣本,不斷地更新權(quán)值,計算預(yù)測誤差。通過不斷的訓(xùn)練,得到10個弱預(yù)測器和相應(yīng)的權(quán)值,最后通過加權(quán),輸出一個規(guī)劃識別最終預(yù)測器。
由圖2、圖3的均方誤差曲線可以看出,Ada-Boost改進的規(guī)劃識別在第5次之后開始收斂,最佳驗證性能為0.00057352;規(guī)劃識別在訓(xùn)練7次之后開始收斂,最佳性能為0.00075864;由圖可得,經(jīng)由AdaBoost改進后的規(guī)劃識別算法比過去簡單的的規(guī)劃識別算法收斂速度更快,擁有更良好的預(yù)測效果。
圖2 規(guī)劃識別預(yù)測模型均方誤差曲線
圖3 AdaBoost改進的規(guī)劃識別預(yù)測模型均方誤差曲線
為了提高在沙盤演練中敵意規(guī)劃的預(yù)測效率和準確度,本文提出基于AdaBoost改進的規(guī)劃識別方法。將每個規(guī)劃識別預(yù)測模型看做一個弱預(yù)測器,利用AdaBoost算法的核心思想,將得到多個經(jīng)過多次訓(xùn)練的、誤差較小的弱預(yù)測器組合成一個強預(yù)測器。利用得到的強預(yù)測器,識別預(yù)測軍事對抗中的敵意規(guī)劃。通過實驗證明,改進后的規(guī)劃識別方法可以提高預(yù)測模型的收斂速度以及預(yù)測效果,因此,改進后的規(guī)劃識別預(yù)測模型用于沙盤演練中敵意規(guī)劃的預(yù)測效果相對更好,所以該模型可以用于敵意規(guī)劃的識別與應(yīng)對之中,為演練中的敵意規(guī)劃預(yù)測提供了一種新的方法,結(jié)論為決策者做出科學(xué)決策提供幫助。
文章提出的方法主要考慮對手規(guī)劃中的復(fù)雜性和誤導(dǎo)性,雖然抽象后的數(shù)據(jù)特征能夠提高模型的識別精度,但是有些初始信息的處理較為繁瑣,會增加模型對數(shù)據(jù)信息處理工作量。所以下一步的研究重點是提高處理行為信息的效率,并且雖然本文提出的算法一定程度上提高了識別的精度,但在實際應(yīng)用場景中還需要能夠適應(yīng)多場景的識別方法,接下來的研究學(xué)習(xí)將盡可能地提高算法的精度,從而能夠在實際環(huán)境下實現(xiàn)應(yīng)用。