況立群,李思遠(yuǎn),馮 利,韓 燮,徐清宇
1.中北大學(xué) 大數(shù)據(jù)學(xué)院,太原 030051
2.北方自動(dòng)控制技術(shù)研究所 仿真裝備部,太原 030006
現(xiàn)代戰(zhàn)爭(zhēng)規(guī)模與復(fù)雜性不斷擴(kuò)大,作戰(zhàn)方式日益復(fù)雜,面對(duì)瞬息萬(wàn)變的戰(zhàn)場(chǎng)環(huán)境,僅靠人類(lèi)決策行動(dòng)已經(jīng)很難確保正確快速的軍事響應(yīng)[1]。深度強(qiáng)化學(xué)習(xí)在解決序貫決策問(wèn)題上做出了許多突出貢獻(xiàn),契合了指揮員的經(jīng)驗(yàn)學(xué)習(xí)與決策思維方式,二者相結(jié)合是現(xiàn)代智能軍事決策的發(fā)展方向。強(qiáng)化學(xué)習(xí)[2]具有魯棒性強(qiáng)[3]、獨(dú)立于環(huán)境模型和先驗(yàn)知識(shí)等優(yōu)點(diǎn),在運(yùn)用于軍事作戰(zhàn)行動(dòng)中常采用試錯(cuò)法尋求最優(yōu)軍事決策序列。Q-Learning[4]是一種典型的強(qiáng)化學(xué)習(xí)方法,已被廣泛地研究并產(chǎn)生了SARSA[5]、深度Q網(wǎng)絡(luò)(DQN)[6]、Double-DQN[7]等改進(jìn)算法。Q-Learning被大量應(yīng)用于軍事決策中的部分環(huán)節(jié)中,如戰(zhàn)機(jī)路徑規(guī)劃[8]以及半自治坦克軍事決策[9]。2015年,DeepMind團(tuán)隊(duì)提出了DQN算法,將深度卷積神經(jīng)網(wǎng)絡(luò)和Q學(xué)習(xí)結(jié)合到一起,在Atari系列游戲上達(dá)到了人類(lèi)專(zhuān)家[10]的決策和控制水平,并且避免了Q表的巨大存儲(chǔ)空間;此外還利用經(jīng)驗(yàn)回放記憶和目標(biāo)網(wǎng)絡(luò)提高了訓(xùn)練過(guò)程的穩(wěn)定性。陸軍工程大學(xué)依據(jù)該算法提出了一種基于DQN的逆向強(qiáng)化學(xué)習(xí)的陸軍分隊(duì)?wèi)?zhàn)術(shù)決策技術(shù)框架[11],在解決戰(zhàn)術(shù)行動(dòng)決策上取得了一定的效果。
雖然DQN算法在離散行為決策方面取得了一系列成果[12],但是難以實(shí)現(xiàn)高維的連續(xù)動(dòng)作。如果連續(xù)變化的動(dòng)作被無(wú)限分割,那么動(dòng)作數(shù)量會(huì)隨著自由度的增加而成倍增加,這就導(dǎo)致了維度突變的問(wèn)題,網(wǎng)絡(luò)將難以收斂。常見(jiàn)做法是對(duì)真實(shí)的作戰(zhàn)系統(tǒng)進(jìn)行有限的網(wǎng)格化處理,形成若干離散的空間與動(dòng)作,其弊端是大大降低了真實(shí)作戰(zhàn)環(huán)境的復(fù)雜性,丟失了很多環(huán)境與動(dòng)作細(xì)節(jié)。例如,在人員移動(dòng)方面只能產(chǎn)生離散的運(yùn)動(dòng),難以準(zhǔn)確地模擬真實(shí)戰(zhàn)場(chǎng)環(huán)境下的人員決策行為[13]。
2015年,Lillicrap等人[14]綜合DQN算法、經(jīng)驗(yàn)回放緩沖區(qū)和目標(biāo)網(wǎng)絡(luò)的優(yōu)點(diǎn),提出了深度確定策略梯度(DDPG)算法來(lái)解決連續(xù)狀態(tài)行為空間中的深度強(qiáng)化學(xué)習(xí)問(wèn)題。同時(shí),采用基于確定性策略梯度的演員-評(píng)論家(Actor-Critic)算法使網(wǎng)絡(luò)輸出結(jié)果具有確定的動(dòng)作值,保證了DDPG可以應(yīng)用于連續(xù)動(dòng)作空間領(lǐng)域[15],彌補(bǔ)了DQN算法無(wú)法適用于連續(xù)動(dòng)作空間的缺點(diǎn)。然而,由于DDPG算法中Actor網(wǎng)絡(luò)和Q函數(shù)之間的相互作用,使得算法通常難以達(dá)到穩(wěn)定,因此很難直接將DDPG算法應(yīng)用到復(fù)雜的高維多智能體環(huán)境。在多智能體環(huán)境下,各個(gè)智能體之間會(huì)產(chǎn)生相互影響和制約[16],引起環(huán)境的變化,導(dǎo)致算法難以收斂。陳亮等人[17]在DDPG算法的基礎(chǔ)上提出了一種改進(jìn)DDPG的多智能體強(qiáng)化學(xué)習(xí)算法,該算法雖然構(gòu)建了一個(gè)允許任意數(shù)量智能體的靈活框架,但由于所有智能體共享當(dāng)前環(huán)境的相同狀態(tài),使得環(huán)境狀態(tài)維數(shù)增加,且環(huán)境會(huì)受到所有智能體策略動(dòng)作的影響,導(dǎo)致算法收斂比較困難。趙毓等人[18]在多智能體環(huán)境下的無(wú)人機(jī)避碰計(jì)算制導(dǎo)方法中通過(guò)采用集中訓(xùn)練-分布執(zhí)行來(lái)滿足多智能體算法穩(wěn)定收斂的要求,但是該算法只能局限于少量智能體參與,無(wú)法滿足任意數(shù)量智能體的策略學(xué)習(xí)。
綜上,為解決深度強(qiáng)化學(xué)習(xí)算法難以運(yùn)用于高度復(fù)雜且連續(xù)決策的現(xiàn)代戰(zhàn)場(chǎng)環(huán)境,同時(shí)多智能體環(huán)境下算法難以收斂的問(wèn)題,本文提出了一個(gè)改進(jìn)的DDPG算法——單訓(xùn)練模式雙噪聲DDPG算法(Single-mode and Double-noise DDPG,SD-DDPG),在經(jīng)驗(yàn)采樣、獎(jiǎng)勵(lì)函數(shù)[19]、探索策略[20]和多智能體框架[21]方面對(duì)DDPG算法進(jìn)行改進(jìn)?;趦?yōu)先級(jí)的經(jīng)驗(yàn)重放技術(shù)[22]更加注重有價(jià)值經(jīng)驗(yàn)的學(xué)習(xí),提高算法的收斂速度;連續(xù)型獎(jiǎng)勵(lì)函數(shù)突破稀疏獎(jiǎng)勵(lì)長(zhǎng)時(shí)間無(wú)法變化的困境;OU噪聲與高斯噪聲相結(jié)合的智能體探索策略,滿足連續(xù)決策與離散決策的探索要求;多智能體框架為每個(gè)作戰(zhàn)單位分配單獨(dú)的深度強(qiáng)化學(xué)習(xí)算法,采用單模式訓(xùn)練策略來(lái)大大提高算法收斂的速率和穩(wěn)定性。
DDPG是深度強(qiáng)化學(xué)習(xí)中一種可以用來(lái)解決連續(xù)動(dòng)作空間問(wèn)題的典型算法,可以根據(jù)學(xué)習(xí)到的策略直接輸出動(dòng)作。確定性的目的是幫助策略梯度避免隨機(jī)選擇,并輸出特定的動(dòng)作值。目前,DDPG算法在無(wú)人駕駛汽車(chē)和無(wú)人駕駛船舶領(lǐng)域有著較為成熟的應(yīng)用,由于DDPG算法有著很強(qiáng)的序貫決策能力,恰好與軍事決策思維方式有很大的契合,因此將其應(yīng)用在智能軍事決策領(lǐng)域具有重要價(jià)值。圖1為DDPG算法框架。
圖1 DDPG算法框圖Fig.1 DDPG algorithm block diagram
DDPG算法以初始狀態(tài)信息S t為輸入,輸出結(jié)果為算法計(jì)算出的動(dòng)作策略μ(S t)。在動(dòng)作策略中加入隨機(jī)噪聲,得到最終的輸出動(dòng)作,這是一種典型的端到端學(xué)習(xí)模式。在啟動(dòng)任務(wù)時(shí),智能體(agent)根據(jù)當(dāng)前狀態(tài)s t輸出一個(gè)動(dòng)作,設(shè)計(jì)獎(jiǎng)勵(lì)函數(shù)并對(duì)該動(dòng)作進(jìn)行評(píng)價(jià),以驗(yàn)證輸出動(dòng)作的有效性,從而獲得環(huán)境的反饋獎(jiǎng)賞r t。有利于agent實(shí)現(xiàn)目標(biāo)的行為將得到積極獎(jiǎng)勵(lì),相反,給予消極懲罰。然后,將當(dāng)前狀態(tài)信息、動(dòng)作、獎(jiǎng)勵(lì)和下一次的狀態(tài)信息(s t,a t,rt,s t+1)存儲(chǔ)在經(jīng)驗(yàn)緩沖池中。同時(shí),神經(jīng)網(wǎng)絡(luò)通過(guò)從經(jīng)驗(yàn)緩沖池中隨機(jī)抽取樣本數(shù)據(jù),訓(xùn)練經(jīng)驗(yàn),不斷調(diào)整動(dòng)作策略,更新網(wǎng)絡(luò)參數(shù),進(jìn)一步提高算法的穩(wěn)定性和準(zhǔn)確性。
DDPG是較為先進(jìn)的深度強(qiáng)化學(xué)習(xí)算法,具有處理高維連續(xù)動(dòng)作空間的能力,然而DDPG算法中Actor網(wǎng)絡(luò)和Q函數(shù)之間的相互作用使得算法通常難以達(dá)到穩(wěn)定,且超參數(shù)的選擇也變得非常困難,因此難以直接將DDPG算法應(yīng)用于軍事決策下的多智能體環(huán)境。
軍事決策領(lǐng)域涵蓋內(nèi)容非常廣泛,本文選取了藍(lán)軍步兵進(jìn)攻紅軍軍事基地這一具體軍事作戰(zhàn)行動(dòng)?;赨nity獨(dú)立開(kāi)發(fā)了智能軍事決策仿真訓(xùn)練環(huán)境,將藍(lán)軍步兵進(jìn)攻紅軍軍事基地作戰(zhàn)行動(dòng)映射到基于Unity的模擬環(huán)境中去,實(shí)現(xiàn)了作戰(zhàn)智能體在模擬環(huán)境下進(jìn)行軍事決策行為的訓(xùn)練學(xué)習(xí)。
為了更加高效地探究基于深度強(qiáng)化學(xué)習(xí)的智能軍事決策能力,本文對(duì)藍(lán)軍步兵進(jìn)攻紅軍基地軍事行動(dòng)定義如下規(guī)則?;赨nity搭建1 000 m×1 000 m作戰(zhàn)環(huán)境,預(yù)設(shè)6名藍(lán)軍步兵作為一個(gè)小隊(duì)進(jìn)攻紅軍基地,作戰(zhàn)智能體可以在360°范圍內(nèi)進(jìn)行移動(dòng)與射擊操作,作戰(zhàn)智能體的個(gè)數(shù)在仿真環(huán)境接口中進(jìn)行設(shè)定。在該模擬環(huán)境中預(yù)先設(shè)置多個(gè)障礙物,作為紅軍軍事基地的保護(hù)屏障,作戰(zhàn)智能體無(wú)法自由穿過(guò)障礙物,紅軍軍事基地坐落在障礙物后方。該軍事作戰(zhàn)模擬環(huán)境具有高度的自由性,障礙物的數(shù)量、位置以及基地的大小位置都可以自由設(shè)定,模擬環(huán)境中還搭建了山體、樹(shù)木、草地等易于作戰(zhàn)智能體隱蔽的區(qū)域,更加符合真實(shí)的作戰(zhàn)場(chǎng)景,滿足多種軍事作戰(zhàn)行動(dòng)環(huán)境的要求。具體模擬環(huán)境如圖2所示。
圖2 模擬作戰(zhàn)環(huán)境Fig.2 Simulation environment
藍(lán)軍步兵進(jìn)攻紅軍基地軍事作戰(zhàn)行動(dòng)中的環(huán)境狀態(tài)信息涉及作戰(zhàn)智能體的位置信息、動(dòng)作信息、障礙物及基地信息等。本文改進(jìn)的DDPG算法中使用的環(huán)境狀態(tài)信息如表1所示。
表1 輸入變量定義Table 1 Input variable definition
在真實(shí)的藍(lán)軍步兵進(jìn)攻紅軍基地軍事行動(dòng)中,作戰(zhàn)人員會(huì)依據(jù)環(huán)境的特點(diǎn)選取一條最優(yōu)的行動(dòng)路線,模擬環(huán)境中將作戰(zhàn)智能體與最優(yōu)決策路線的距離歸一化為
[-1,1],距離越小表明學(xué)習(xí)到的策略越好。
由于作戰(zhàn)智能體獲得的是多個(gè)不同類(lèi)型的環(huán)境狀態(tài)數(shù)據(jù),信息具有多樣性與復(fù)雜性,因此需要進(jìn)行有效融合與處理,作為環(huán)境的狀態(tài)輸入。具體操作為:
(1)收集所有不同類(lèi)型的具有價(jià)值的環(huán)境狀態(tài)數(shù)據(jù)。
(2)對(duì)收集到的環(huán)境狀態(tài)數(shù)據(jù)進(jìn)行分析,篩選特征值,剔除不合理的數(shù)據(jù),合并具有共同描述特征的數(shù)據(jù)。
(3)歸一化處理狀態(tài)特征值,便于神經(jīng)網(wǎng)絡(luò)的處理與學(xué)習(xí)。
(4)對(duì)經(jīng)處理后不同目標(biāo)的狀態(tài)值進(jìn)行組合,設(shè)置為Numpy中ndarray對(duì)象格式,作為輸入狀態(tài)。
在真實(shí)戰(zhàn)場(chǎng)環(huán)境下,藍(lán)軍步兵進(jìn)攻紅軍軍事基地,為保證藍(lán)軍步兵的隱蔽性,在距離紅軍軍事基地較遠(yuǎn)距離時(shí)(直線距離大于200 m),不得執(zhí)行射擊動(dòng)作。戰(zhàn)場(chǎng)環(huán)境中,軍事障礙物不可穿越,藍(lán)軍作戰(zhàn)單位應(yīng)當(dāng)繞過(guò)障礙物,占據(jù)優(yōu)勢(shì)位置后對(duì)紅軍基地發(fā)動(dòng)攻擊。為保證軍事決策模擬的真實(shí)性,作戰(zhàn)單位執(zhí)行射擊操作有射程限制,該軍事行動(dòng)中限制為200 m。
作戰(zhàn)智能體具有高度的靈活性,可以全方位自由運(yùn)動(dòng)與射擊,解決了傳統(tǒng)智能軍事決策算法只能執(zhí)行一定離散動(dòng)作的問(wèn)題,極大提高了軍事決策模擬的真實(shí)性。同時(shí),這也涉及到更為精確的動(dòng)作控制,包括作戰(zhàn)智能體的運(yùn)動(dòng)方向、運(yùn)動(dòng)速度、射擊操作。變量定義如表2所示。
表2 輸出動(dòng)作變量定義Table 2 Output action variable definition
DDPG算法采用連續(xù)的動(dòng)作空間,一個(gè)任務(wù)回合內(nèi)需要采取的動(dòng)作空間很大,離散的獎(jiǎng)勵(lì)函數(shù)在一定的動(dòng)作范圍內(nèi)只能給出相同的獎(jiǎng)勵(lì)值,無(wú)法對(duì)動(dòng)作的細(xì)微變化進(jìn)行精確有效的評(píng)價(jià),使得模型難以收斂。
針對(duì)以上問(wèn)題,本文設(shè)計(jì)了具有持續(xù)獎(jiǎng)勵(lì)支持的連續(xù)性獎(jiǎng)勵(lì)函數(shù)。獎(jiǎng)勵(lì)函數(shù)如公式(1)所示:
式(1)中,(x,y)是作戰(zhàn)智能體的位置坐標(biāo),r是方向弧度值。當(dāng)作戰(zhàn)智能體越過(guò)環(huán)境邊界或者與障礙物相撞時(shí),獎(jiǎng)勵(lì)值設(shè)置為-200,給予懲罰。當(dāng)作戰(zhàn)智能體執(zhí)行射擊動(dòng)作但未擊中目標(biāo),則累加獎(jiǎng)勵(lì)值-100。為了引導(dǎo)作戰(zhàn)智能體更快地學(xué)習(xí)到最優(yōu)軍事決策策略,設(shè)計(jì)連續(xù)性函數(shù)引導(dǎo)作戰(zhàn)智能體到達(dá)預(yù)先設(shè)立的區(qū)域,距離值越小獲得的獎(jiǎng)勵(lì)值越大。到達(dá)指定區(qū)域附近后,將射擊點(diǎn)與紅軍基地的距離設(shè)為獎(jiǎng)勵(lì)函數(shù),引導(dǎo)作戰(zhàn)智能體向紅軍基地位置進(jìn)行射擊。持續(xù)性的獎(jiǎng)勵(lì)刺激可以更加高效地引導(dǎo)智能體快速學(xué)習(xí)到最優(yōu)決策序列。該作戰(zhàn)任務(wù)的最終目標(biāo)是將紅軍基地摧毀,給予獎(jiǎng)勵(lì)值+200。
本文提出一個(gè)改進(jìn)的DDPG算法——單模式訓(xùn)練雙噪聲DDPG算法(Single-mode and Double-noise DDPG,SD-DDPG),該算法構(gòu)建一個(gè)允許任意數(shù)量agent的靈活框架,所有agent共享當(dāng)前環(huán)境的相同狀態(tài)空間,且每個(gè)作戰(zhàn)agent具有相同的動(dòng)作空間,采用基于優(yōu)先級(jí)的經(jīng)驗(yàn)重放技術(shù)和混合雙噪聲,以及增加單訓(xùn)練模式來(lái)改進(jìn)DDPG算法。SD-DDPG算法對(duì)比DDPG算法在智能軍事決策模擬環(huán)境中有更快的收斂性和更高的穩(wěn)定性。
原始的DDPG算法引入了經(jīng)驗(yàn)重放機(jī)制,使用經(jīng)驗(yàn)重放緩沖區(qū)消除輸入經(jīng)驗(yàn)中存在的相關(guān)性,然而,該經(jīng)驗(yàn)重放機(jī)制基于存儲(chǔ)在重放緩沖區(qū)中的所有經(jīng)驗(yàn)都具有同等重要性的設(shè)定,因此隨機(jī)地對(duì)一小批經(jīng)驗(yàn)進(jìn)行采樣來(lái)更新網(wǎng)絡(luò)。這種設(shè)定有違常理,當(dāng)人們學(xué)會(huì)做某事時(shí),獲得巨大回報(bào)的經(jīng)驗(yàn)和非常成功的嘗試或慘痛的教訓(xùn)會(huì)在學(xué)習(xí)的過(guò)程中不斷地出現(xiàn)在他們的記憶中,因此這些經(jīng)驗(yàn)更有價(jià)值。
在大多數(shù)強(qiáng)化學(xué)習(xí)算法中,TD-error經(jīng)常被用來(lái)矯正Q(s,a)函數(shù)。TD-error的值作為估計(jì)值的修正值反映了agent可以從中學(xué)習(xí)到正確策略的程度。TD-error的值越大,表明對(duì)期望動(dòng)作值的修正越積極,在這種情況下高TD-error的經(jīng)驗(yàn)更有可能具有更高的價(jià)值,并且與非常成功的嘗試緊密聯(lián)系。此外,TD-error為負(fù)的情況與非常失敗的嘗試緊密聯(lián)系,通過(guò)對(duì)非常失敗經(jīng)驗(yàn)的學(xué)習(xí)可以逐步使agent避免再做出錯(cuò)誤的行為,這些不好的經(jīng)驗(yàn)同樣具有很高的價(jià)值。選取TD-error作為評(píng)價(jià)經(jīng)驗(yàn)價(jià)值的標(biāo)準(zhǔn),對(duì)經(jīng)驗(yàn)j計(jì)算TD-error如公式(2)所示:
式中,Q′(s t+1,a t+1,w)是w參數(shù)化的critic目標(biāo)網(wǎng)絡(luò)。抽樣經(jīng)驗(yàn)的概率定義如公式(3)所示:
式中,P(j)表示對(duì)經(jīng)驗(yàn)j進(jìn)行抽樣的概率,其中D j=表示第j個(gè)經(jīng)驗(yàn)在經(jīng)驗(yàn)緩沖池中的位置排序。參數(shù)α決定了優(yōu)先級(jí)的使用程度,抽樣概率的定義可以被視為在經(jīng)驗(yàn)選擇過(guò)程中加入隨機(jī)因素的方法,這可以使得TD-error值比較低的樣本仍然有機(jī)會(huì)被重放,從而保證了經(jīng)驗(yàn)抽樣的多樣性,防止神經(jīng)網(wǎng)絡(luò)過(guò)度擬合。但是由于對(duì)具有高TD-error經(jīng)驗(yàn)的頻繁重放,無(wú)疑改變了樣本的分布,這很可能導(dǎo)致模型收斂到不同的值或者訓(xùn)練不收斂,所以需要選擇重要性采樣,這樣可以確保每個(gè)樣本被選到的概率是不同的,且對(duì)梯度下降具有相同的影響。重要性采樣權(quán)重如公式(4)所示:
式中,S是經(jīng)驗(yàn)緩沖池的大小,P(j)是采樣經(jīng)驗(yàn)j的概率,β是一個(gè)超參數(shù),用來(lái)控制基于優(yōu)先級(jí)經(jīng)驗(yàn)緩沖池重放程度,如果β=1,代表完全抵消優(yōu)先級(jí)經(jīng)驗(yàn)緩沖池對(duì)收斂結(jié)果的影響。
DDPG算法中添加噪聲的動(dòng)作策略與學(xué)習(xí)策略相互獨(dú)立,即DDPG是確定性策略,而探索噪聲可以自行設(shè)定。
原始DDPG算法采用OU(Ornstein-Uhlenbeck)噪聲,OU過(guò)程是一種隨機(jī)過(guò)程,其微分形式如公式(5)所示:
其中,μ是均值,θ表示噪聲趨于平均值的速度,σ表示噪聲的波動(dòng)程度。OU噪聲是時(shí)序相關(guān)的探索噪聲,即前一步的噪聲會(huì)對(duì)后一步的噪聲產(chǎn)生影響,且是馬爾科夫模式的。正是基于OU噪聲時(shí)序相關(guān)的特性,對(duì)于慣性系統(tǒng)的探索效率會(huì)更高。而DDPG作為連續(xù)性算法的代表,非常適用于慣性系統(tǒng)。
許多強(qiáng)化學(xué)習(xí)算法也經(jīng)常采用高斯噪聲,將強(qiáng)化學(xué)習(xí)算法中策略網(wǎng)絡(luò)的輸出動(dòng)作作為均值,直接疊加高斯分布ε~Ν(0,σ2),作為強(qiáng)化學(xué)習(xí)算法的探索策略。區(qū)別于OU噪聲時(shí)序相關(guān)性,高斯噪聲不會(huì)受到之前動(dòng)作的影響,所以對(duì)于不具備時(shí)序相關(guān)的決策動(dòng)作非常適用于高斯噪聲。
在基于改進(jìn)DDPG算法的藍(lán)軍步兵進(jìn)攻紅軍軍事基地智能決策行動(dòng)中,作戰(zhàn)智能體具有三個(gè)決策動(dòng)作,其中速度與方向的控制適用于慣性系統(tǒng),采用OU噪聲可以提高作戰(zhàn)智能體在速度控制與方向選擇策略的探索效率,但是針對(duì)作戰(zhàn)智能體的射擊動(dòng)作,由于射擊動(dòng)作的執(zhí)行在時(shí)序上不具備相關(guān)性,即前一步的射擊動(dòng)作不會(huì)對(duì)后一步是否采取射擊動(dòng)作產(chǎn)生影響,因此采用OU噪聲則會(huì)降低射擊決策動(dòng)作的探索效率。由于高斯噪聲具有獨(dú)立噪聲的特點(diǎn),所以在射擊決策上采用高斯噪聲無(wú)疑是最好的選擇。所以本文引入了OU+Gaussian的混合雙噪聲來(lái)改進(jìn)DDPG算法,提高算法在軍事模擬環(huán)境中的探索效率和收斂速度。后續(xù)實(shí)驗(yàn)結(jié)果表明,采用混合雙噪聲的改進(jìn)DDPG算法具有更快的收斂速度和更高的穩(wěn)定性。OU噪聲參數(shù)設(shè)定如表3所示。
表3 OU噪聲參數(shù)設(shè)定表Table 3 OU noise parameter setting table
表3中,μ代表噪聲的平均值,θ代表趨于平均值的速度,σ為噪聲的波動(dòng)程度。
直接將DDPG算法應(yīng)用于具有多智能體的軍事決策環(huán)境中,算法將很難收斂,因此本文設(shè)計(jì)了增加單模式下的多智能體靈活框架。在本文設(shè)計(jì)的多智能體框架中,每個(gè)作戰(zhàn)智能體獨(dú)立分配一個(gè)改進(jìn)型DDPG算法,每個(gè)作戰(zhàn)智能體擁有獨(dú)立的神經(jīng)網(wǎng)絡(luò)和基于優(yōu)先級(jí)的經(jīng)驗(yàn)緩沖池。每個(gè)作戰(zhàn)智能體在與環(huán)境的交互中,接收全局的環(huán)境狀態(tài)信息,即將全局環(huán)境狀態(tài)作為Actor網(wǎng)絡(luò)的輸入,Critic網(wǎng)絡(luò)則獨(dú)立地對(duì)本智能體決策動(dòng)作進(jìn)行評(píng)價(jià)和訓(xùn)練。
由于環(huán)境中同時(shí)存在多個(gè)作戰(zhàn)智能體,且依據(jù)時(shí)間步循環(huán)對(duì)每一個(gè)作戰(zhàn)智能體進(jìn)行訓(xùn)練,這會(huì)導(dǎo)致環(huán)境的動(dòng)態(tài)變化,降低了算法的收斂速率和穩(wěn)定性,使算法難以收斂。針對(duì)以上問(wèn)題,本文提出了增加單模式下的多智能體框架。即在多智能體框架中加入單模式控制模塊,對(duì)每一個(gè)作戰(zhàn)智能體在特定時(shí)間步內(nèi)增加單訓(xùn)練模式。單訓(xùn)練模式下,算法指定的單作戰(zhàn)智能體獨(dú)立地與環(huán)境交互,學(xué)習(xí)決策策略,其他作戰(zhàn)智能體臨時(shí)進(jìn)入休眠狀態(tài),不會(huì)對(duì)環(huán)境產(chǎn)生影響。退出單訓(xùn)練模式,則多個(gè)智能體同時(shí)對(duì)環(huán)境進(jìn)行探索,學(xué)習(xí)多智能體協(xié)作策略。增加了單模式的多智能體框架,可以大幅提高算法收斂的穩(wěn)定性和速率,既保證了多智能體間可以學(xué)習(xí)到一定的協(xié)作策略,又可以使每個(gè)作戰(zhàn)智能體具有一定的獨(dú)立性。
在藍(lán)軍步兵進(jìn)攻紅軍基地智能決策行動(dòng)中,SDDDPG算法可以穩(wěn)定且高效的收斂。SD-DDPG框架結(jié)構(gòu)如圖3所示。
圖3 SD-DDPG框架圖Fig.3 SD-DDPG frame diagram
本文采用自主研發(fā)的基于Unity的智能軍事決策模擬環(huán)境作為訓(xùn)練平臺(tái),該平臺(tái)具有高度的仿真性和靈活性,采用三維模式構(gòu)建,定義了一些通用的接口,通過(guò)這些接口可以自由設(shè)定滿足特定軍事任務(wù)的仿真環(huán)境,并且大部分經(jīng)典算法都可以在該環(huán)境中進(jìn)行測(cè)試。深度強(qiáng)化學(xué)習(xí)中,將累計(jì)獎(jiǎng)勵(lì)值作為評(píng)價(jià)深度強(qiáng)化學(xué)習(xí)算法收斂性與穩(wěn)定的標(biāo)準(zhǔn)。
目前很少有研究將DDPG算法應(yīng)用于智能軍事決策領(lǐng)域。由于DDPG具有強(qiáng)化的深度神經(jīng)網(wǎng)絡(luò)函數(shù)擬合能力和較好的廣義學(xué)習(xí)能力,且其決策動(dòng)作空間具有連續(xù)性特點(diǎn)。本文選擇DDPG算法作為智能軍事決策的基礎(chǔ)算法。
DQN算法在離散行為方面取得了很大的成功,但是很難實(shí)現(xiàn)高維的連續(xù)動(dòng)作。此外,如果簡(jiǎn)單地將操作離散化會(huì)過(guò)濾掉有關(guān)操作域結(jié)構(gòu)的重要信息,所以離散型的強(qiáng)化學(xué)習(xí)算法無(wú)法用于更為精確的模擬智能軍事決策行為。圖4是DQN算法在智能軍事決策模擬圖。
圖4 應(yīng)用DQN的離散軍事決策模擬圖Fig.4 Discrete military decision simulation chart based on DQN
DQN算法在藍(lán)軍步兵進(jìn)攻紅軍基地軍事決策中,只能輸入離散的動(dòng)作來(lái)適應(yīng)網(wǎng)格化的地圖環(huán)境,雖然算法得到了收斂,但是網(wǎng)格化的地圖環(huán)境以及離散的動(dòng)作控制大大降低了軍事決策模擬難度,忽略了真實(shí)軍事環(huán)境下作戰(zhàn)單位執(zhí)行動(dòng)作的高維性?;贒DPG算法的改進(jìn)算法則可以依據(jù)更強(qiáng)大的神經(jīng)網(wǎng)絡(luò)以及連續(xù)的動(dòng)作控制,更加真實(shí)的對(duì)藍(lán)軍步兵智能軍事決策行為進(jìn)行模擬,圖5是基于SD-DDPG算法的連續(xù)型軍事決策模擬圖。
圖5 基于SD-DDPG算法的連續(xù)型軍事決策模擬圖Fig.5 Continuous military decision simulation chart based on SD-DDPG algorithm
實(shí)驗(yàn)結(jié)果表明,基于SD-DDPG算法的智能軍事決策能夠穩(wěn)定且高效地執(zhí)行連續(xù)型動(dòng)作控制,每個(gè)作戰(zhàn)智能體在連續(xù)型獎(jiǎng)勵(lì)函數(shù)的引導(dǎo)下,快速且穩(wěn)定地繞過(guò)軍事障礙物到達(dá)指定隱蔽區(qū)域,之后智能執(zhí)行射擊動(dòng)作,進(jìn)攻紅軍軍事基地,快速完成藍(lán)軍步兵進(jìn)攻紅軍軍事基地作戰(zhàn)任務(wù)。對(duì)比離散型DQN算法,SD-DDPG算法應(yīng)用于智能軍事決策行為更具真實(shí)性與高效性,克服了目前在軍事決策領(lǐng)域只能網(wǎng)格化作戰(zhàn)環(huán)境與執(zhí)行簡(jiǎn)單離散動(dòng)作的弊端,是連續(xù)性動(dòng)作控制在智能軍事決策領(lǐng)域的一次全新嘗試,為后續(xù)探索智能軍事決策領(lǐng)域提供了全新的視野與方法。
SD-DDPG算法是DDPG算法的改進(jìn)算法,通過(guò)引入基于優(yōu)先級(jí)的經(jīng)驗(yàn)重放技術(shù),解決了原始經(jīng)驗(yàn)緩沖池中所有經(jīng)驗(yàn)都具有同等重要性的弊端,通過(guò)加入OU與Gaussian混合雙噪聲來(lái)提高算法的探索能力,最后在多智能體框架下增加單訓(xùn)練模式,提高了多智能體與環(huán)境交互的穩(wěn)定性,使算法能夠快速且高效地收斂。
以DDPG算法作為基準(zhǔn)算法,加入OU+Gaussian混合雙噪聲后,使決策動(dòng)作的探索更加高效,算法收斂的穩(wěn)定性有一定程度的提高。
圖6在不同噪聲環(huán)境下通過(guò)迭代訓(xùn)練300回合(episode)進(jìn)行對(duì)比,每個(gè)回合最大訓(xùn)練次數(shù)為5 000次。實(shí)驗(yàn)結(jié)果表明,對(duì)速度控制和方向控制疊加OU噪聲,以及對(duì)射擊動(dòng)作控制疊加Gaussian噪聲后,DDPG算法在該軍事決策模擬環(huán)境下具有更高的穩(wěn)定性。
圖6 OU噪聲與OU+Gaussian混合噪聲的獎(jiǎng)勵(lì)對(duì)比Fig.6 Comparison of OU noise and OU+Gaussian mixed noise
針對(duì)多智能體框架下,由于環(huán)境的動(dòng)態(tài)變化而導(dǎo)致的算法不穩(wěn)定且難以收斂的問(wèn)題,本文增加了單訓(xùn)練模式,圖7表示了增加單模式下的DDPG(Single-mode DDPG,S-DDPG)算法收斂速度與收斂穩(wěn)定性都明顯提升。
圖7 增加單模式下DDPG算法與原始算法獎(jiǎng)勵(lì)對(duì)比Fig.7 Comparison of DDPG algorithm and original algorithm in single-mode
為最終驗(yàn)證SD-DDPG算法的先進(jìn)性,本文選取Actor-Critic(演員-評(píng)論家)[23]、DDPG、PER-DDPG(基于優(yōu)先級(jí)經(jīng)驗(yàn)重放技術(shù)的DDPG)[22]等3種連續(xù)性深度強(qiáng)化學(xué)習(xí)算法與之比較,結(jié)果如圖8所示。
圖8 SD-DDPG算法與其他算法獎(jiǎng)勵(lì)對(duì)比Fig.8 Comparison between SD-DDPG algorithm and other algorithms
Actor-Critic算法由actor網(wǎng)絡(luò)和critic網(wǎng)絡(luò)兩部分構(gòu)成,可以執(zhí)行連續(xù)的控制操作,也是DDPG算法的基本框架。PER-DDPG算法對(duì)原始算法進(jìn)行了改進(jìn),使其具備了優(yōu)先級(jí)的經(jīng)驗(yàn)回放,能夠更加高效地從經(jīng)驗(yàn)中學(xué)習(xí)策略。圖8中對(duì)比結(jié)果表明,本文采取的SD-DDPG算法比其他連續(xù)性算法具有更高的回合獎(jiǎng)勵(lì)和更快的收斂穩(wěn)定性。
綜上所述,在藍(lán)軍步兵進(jìn)攻紅軍軍事基地智能軍事決策環(huán)境中,設(shè)定的6名作戰(zhàn)智能體在SD-DDPG算法的指揮控制下,能夠自主規(guī)劃最佳路徑,且在合適的時(shí)機(jī)下對(duì)紅軍基地實(shí)施火力打擊,以最快的速度完美地完成了作戰(zhàn)任務(wù)。SD-DDPG算法的超參數(shù)設(shè)置如表4所示。
表4 SD-DDPG算法超參數(shù)Table 4 Super parameter of SD-DDPG algorithm
表4中超參數(shù)數(shù)值的選擇依據(jù)反復(fù)實(shí)驗(yàn)與經(jīng)驗(yàn)所得。批尺寸的大小一般為8、16、32、64等,大的批尺寸能夠使模型更準(zhǔn)確地朝著極值所在的方向更新,但批尺寸的選擇也會(huì)受到計(jì)算機(jī)內(nèi)存大小的限制,通過(guò)實(shí)驗(yàn)并結(jié)合計(jì)算機(jī)硬件實(shí)際條件,選擇批尺寸大小為32。折扣系數(shù)反映了對(duì)未來(lái)獎(jiǎng)勵(lì)的期望程度,藍(lán)軍步兵進(jìn)攻紅軍基地軍事行動(dòng)更關(guān)注于最終的戰(zhàn)果,因此設(shè)置折扣系數(shù)為0.99。圖7中算法在150個(gè)回合后趨于穩(wěn)定,圖6與圖8表明算法在250個(gè)回合后趨于穩(wěn)定,因此選擇回合數(shù)為300以及每回合最大步數(shù)為5 000可以保證算法在最短時(shí)間內(nèi)收斂,且不會(huì)因?yàn)檫^(guò)多的回合訓(xùn)練造成過(guò)擬合現(xiàn)象。噪聲的探索次數(shù)根據(jù)回合數(shù)與每回合最大步數(shù)得出。經(jīng)驗(yàn)緩沖池存儲(chǔ)供網(wǎng)絡(luò)訓(xùn)練的樣本數(shù)據(jù),過(guò)小的緩沖池必然會(huì)使一部分經(jīng)驗(yàn)被丟棄,而過(guò)大的緩沖池又會(huì)受到計(jì)算機(jī)內(nèi)存與性能的限制,通過(guò)多次實(shí)驗(yàn),選擇緩沖池大小為350 000。SD-DDPG算法通過(guò)軟更新來(lái)更新目標(biāo)網(wǎng)絡(luò)參數(shù),通常設(shè)定目標(biāo)網(wǎng)絡(luò)超參數(shù)為0.001。alpha與beta參數(shù)分別控制優(yōu)先級(jí)經(jīng)驗(yàn)重放程度與重要性采樣程度,通過(guò)權(quán)衡攻擊性與魯棒性[24],確定alpha與beta的數(shù)值為0.6與0.4。
學(xué)習(xí)率的選擇是所有超參數(shù)調(diào)整中最為重要的,它會(huì)對(duì)模型的收斂性與學(xué)習(xí)速率產(chǎn)生重要影響。LRA與LRC的選擇通常為0.01、0.001、0.000 1等。選擇較大學(xué)習(xí)率可能導(dǎo)致模型不收斂,而選擇較小學(xué)習(xí)率雖然會(huì)提高模型收斂的概率,但會(huì)影響模型的收斂速度。SD-DDPG算法中,critic網(wǎng)絡(luò)對(duì)actor網(wǎng)絡(luò)進(jìn)行評(píng)價(jià),通常需要更快的學(xué)習(xí)率。圖9表明,學(xué)習(xí)率參數(shù)選擇0.001數(shù)量級(jí)時(shí),模型難以收斂,而LRA與LRC分別為0.000 1與0.000 2具有更快的收斂速度與穩(wěn)定性。
圖9 學(xué)習(xí)率參數(shù)對(duì)模型性能影響Fig.9 Influence of learning rate parameters on model performance
本文以DDPG算法為基礎(chǔ),提出了SD-DDPG算法并應(yīng)用于解決智能軍事決策問(wèn)題。通過(guò)引入基于優(yōu)先級(jí)的經(jīng)驗(yàn)重放技術(shù)、混合雙噪聲以及增加單訓(xùn)練模式來(lái)提高算法在軍事決策問(wèn)題上的收斂穩(wěn)定性和收斂速度,是連續(xù)性軍事決策智能生成的一次成功探索。實(shí)驗(yàn)結(jié)果表明,SD-DDPG算法具有更高的回合獎(jiǎng)勵(lì)、更快的收斂速度和更好的穩(wěn)定性,可以有效地提升智能軍事決策效率。但SD-DDPG算法弱化了多智能體間的交流協(xié)作,只能實(shí)現(xiàn)一定程度的交流協(xié)作能力,它更注重任務(wù)的快速完成。下一步將拓展研究范圍,加強(qiáng)對(duì)以多智能體之間的通信為基礎(chǔ)的多agent算法研究。