陶燦燦,韓 旭,周 銳
(1.北京航空航天大學(xué) 自動(dòng)化科學(xué)與電氣工程學(xué)院,北京 100191;2.中國航空工業(yè)總公司成都飛機(jī)設(shè)計(jì)研究所,四川 成都 610091)
利用無人機(jī)/無人車等異構(gòu)多機(jī)器人的功能互補(bǔ)性,組成跨域協(xié)作系統(tǒng),實(shí)現(xiàn)任務(wù)協(xié)同和信息共享,能夠彌補(bǔ)單一軍種作戰(zhàn)力量的不足,進(jìn)而創(chuàng)造出單一領(lǐng)域行動(dòng)無法達(dá)成的效果[1-2]。
任務(wù)規(guī)劃是無人作戰(zhàn)的頂層規(guī)劃,應(yīng)根據(jù)任務(wù)環(huán)境態(tài)勢(shì)、任務(wù)需求、自身特性等進(jìn)行綜合調(diào)度。文獻(xiàn)[3]考慮時(shí)間窗、速度及能量共享,提出一種多準(zhǔn)則混合整數(shù)規(guī)劃模型,以最小化旅行距離、旅行時(shí)間和能源消耗為目標(biāo)進(jìn)行多機(jī)器人任務(wù)規(guī)劃;文獻(xiàn)[4]考慮平臺(tái)能力、任務(wù)特點(diǎn)及環(huán)境約束,提出了一種基于市場(chǎng)的異構(gòu)空地機(jī)器人任務(wù)分配算法,目標(biāo)是最小化團(tuán)隊(duì)執(zhí)行救援任務(wù)的總時(shí)間;文獻(xiàn)[5]針對(duì)城市環(huán)境中持續(xù)監(jiān)測(cè)任務(wù),提出了一種估計(jì)分布算法和遺傳算法相結(jié)合的混合算法,用于無人機(jī)-無人車協(xié)同路徑規(guī)劃。
本文研究智能任務(wù)規(guī)劃技術(shù)助力無人作戰(zhàn)飛機(jī)(Uninhabited Combat Aerial Vehicle,UCAV)/無人戰(zhàn)車(Uninhabited Combat Ground Vehicle,UCGV)進(jìn)行無人作戰(zhàn)的可能性[6]??紤]到UCAV/UCGV協(xié)同任務(wù)規(guī)劃擴(kuò)展性,引入任務(wù)分析和環(huán)境建模仿真(Task Analysis Environment Modeling and Simulation,TAEMS)模型語言來描述UCAV/UCGV的任務(wù)結(jié)構(gòu),基于DTC方法設(shè)計(jì)任務(wù)規(guī)劃的目標(biāo)函數(shù),并利用基于精英機(jī)制的遺傳算法求解UCAV/UCGV任務(wù)規(guī)劃問題的解。在任務(wù)規(guī)劃過程中集成了路徑規(guī)劃[7],規(guī)劃的結(jié)果是包含任務(wù)參數(shù)信息如位置、時(shí)間、累加收益、累加路徑的動(dòng)作序列。
以協(xié)同攻擊任務(wù)為例,無人機(jī)/無人車執(zhí)行攻擊任務(wù)的目的是在作戰(zhàn)初期派UCAV和UCGV進(jìn)入敵方戰(zhàn)區(qū),利用異構(gòu)平臺(tái)作戰(zhàn)能力的差異性和互補(bǔ)性,UCAV和UCGV根據(jù)戰(zhàn)場(chǎng)信息分別對(duì)不同的敵方火力部署進(jìn)行摧毀,從而獲得更大的作戰(zhàn)效益,并減小后期有人部隊(duì)對(duì)該區(qū)域進(jìn)行搜索、轟炸的危險(xiǎn)性,提升整個(gè)戰(zhàn)場(chǎng)的作戰(zhàn)效果[8]。
圖 1為UCAV/UCGV協(xié)同執(zhí)行攻擊任務(wù)的示意圖,戰(zhàn)場(chǎng)環(huán)境中存在敵方各類武器威脅,如雷達(dá)、裝甲車、炮、直升機(jī)、單兵等,圖中以“+”表示,周圍的圓表示威脅覆蓋的區(qū)域;存在不同的環(huán)境威脅區(qū)域,如電磁區(qū)、惡劣氣候區(qū)等,圖中以陰影區(qū)域表示;存在不同的地形威脅區(qū)域(主要針對(duì)UCGV),根據(jù)通過的難易程度分為避免通過區(qū)和不可通過區(qū),圖中以不規(guī)則四邊形區(qū)域表示,不可通過區(qū)可以是難以通過的坑洼、斷崖、河流、湖泊等[9]。
圖1 UCAV/UCGV協(xié)同攻擊任務(wù)想定Fig.1 UCAV/UCGV collaborative attack mission scenario
TAEMS是一種通用的Agent任務(wù)結(jié)構(gòu)描述語言,實(shí)質(zhì)上是分層的有向圖[10],以無人機(jī)/無人車協(xié)同執(zhí)行攻擊任務(wù)為例,其對(duì)應(yīng)的基于TAEMS描述的任務(wù)結(jié)構(gòu)如圖 2所示。圖中的任務(wù)結(jié)構(gòu)包含3類節(jié)點(diǎn)[11-12]:任務(wù)群、任務(wù)和動(dòng)作。任務(wù)群節(jié)點(diǎn)是TAEMS框架中最高層的任務(wù)節(jié)點(diǎn),是沒有父節(jié)點(diǎn)的任務(wù)節(jié)點(diǎn);任務(wù)節(jié)點(diǎn)本身可以遞階地分解為更低層次的子任務(wù),并通過品質(zhì)累積函數(shù)定義各子節(jié)點(diǎn)的合成方式,在圖中圓角矩形表示任務(wù);動(dòng)作節(jié)點(diǎn)是TAEMS任務(wù)樹型結(jié)構(gòu)的葉節(jié)點(diǎn),它沒有子節(jié)點(diǎn),動(dòng)作表示可以由Agent直接執(zhí)行的,不能再分解的任務(wù),在圖中用矩形表示動(dòng)作。
圖2 基于TAEMS模型的UCAV/UCGV任務(wù)結(jié)構(gòu)Fig.2 UCAV/UCGV mission structure based on TAEMS model
TAEMS任務(wù)結(jié)構(gòu)模型定義了任務(wù)的效用信息(如收益、代價(jià)、持續(xù)時(shí)間、持續(xù)路程等)和子任務(wù)間的相互關(guān)系,在圖 2中帶矩形標(biāo)簽的有向線表示相互關(guān)系。常用到的相互關(guān)系有[13-14]:
(1)
式中,Ta,Tb表示任務(wù)或方法節(jié)點(diǎn);{Task}表示任務(wù)節(jié)點(diǎn)集合,{Method}表示方法節(jié)點(diǎn)集合;使能關(guān)系enable(Ta,Tb)表示只有關(guān)系的源節(jié)點(diǎn)完成后,目標(biāo)節(jié)點(diǎn)才允許被執(zhí)行和生效;使不能關(guān)系disable(Ta,Tb),表示只有在關(guān)系源節(jié)點(diǎn)未執(zhí)行時(shí),目標(biāo)節(jié)點(diǎn)才可執(zhí)行和生效;促進(jìn)關(guān)系facilitate(Ta,Tb)表示源節(jié)點(diǎn)對(duì)目標(biāo)節(jié)點(diǎn)的執(zhí)行效果具有有利影響;阻礙關(guān)系hinder(Ta,Tb)表示源節(jié)點(diǎn)對(duì)目標(biāo)節(jié)點(diǎn)的執(zhí)行效果具有不利影響。
品質(zhì)累積函數(shù) (Quality Accumulate Function,QAF)定義了如何由各子節(jié)點(diǎn)的品質(zhì)獲取節(jié)點(diǎn)自身的品質(zhì)。常用的QAF有[13,15]:
(2)
式中,{T1,T2,…,Tm}是子節(jié)點(diǎn)集合,m表示子節(jié)點(diǎn)的個(gè)數(shù),q_min表示任務(wù)節(jié)點(diǎn)的品質(zhì)為其所有子節(jié)點(diǎn)中最小的品質(zhì)值;q_max表示節(jié)點(diǎn)品質(zhì)等于其子節(jié)點(diǎn)中最大的品質(zhì)值;q_sum表示父節(jié)點(diǎn)的品質(zhì)值等于其所有子節(jié)點(diǎn)品質(zhì)值之和;q_exactly_one表示完成父節(jié)點(diǎn)可以通過執(zhí)行其任何一個(gè)子節(jié)點(diǎn),父節(jié)點(diǎn)的品質(zhì)值為所執(zhí)行的子節(jié)點(diǎn)的品質(zhì)值。
動(dòng)作是UCAV/UCGV可以直接執(zhí)行的原始任務(wù),形式化描述為[1,11]:
IA= estimate_time,certainty,val, location,attachPara,interrelations>, (3) 式中,id為動(dòng)作的編號(hào),label為動(dòng)作的名稱,Agent為動(dòng)作所屬的智能體,threatcost為執(zhí)行該動(dòng)作需要付出的威脅代價(jià),estimate_time為完成動(dòng)作的預(yù)計(jì)時(shí)間,certainty為動(dòng)作存在概率,val為完成動(dòng)作后獲得的回報(bào),location為完成動(dòng)作所在的位置,attachPara為和具體任務(wù)相關(guān)的附加參數(shù),其形式和內(nèi)容是由具體的任務(wù)決定的,interrelations為和動(dòng)作關(guān)聯(lián)的關(guān)系集合,IA為InputAction縮寫。 動(dòng)作集合是UCAV/UCGV任務(wù)結(jié)構(gòu)分解出來的無序動(dòng)作集合,即 IAS={IA1,IA2,…,IAn}, (4) 式中,IAS為InputActionSet的縮寫,IAi表示任務(wù)結(jié)構(gòu)分解出來的無序動(dòng)作集合中第i個(gè)具體的動(dòng)作。 解動(dòng)作是UCAV/UCGV任務(wù)規(guī)劃求解出來的某個(gè)具體動(dòng)作,形式化描述為[11,13]: OA= estimate_time,certainty,val, location,attachPara, interrelations,ac_threatcost, ac_estimate_time,ac_val,ac_dis>, (5) 式中,ac_threatcost為完成該動(dòng)作后的累加威脅代價(jià),ac_estimate_time為完成該動(dòng)作后的累加預(yù)計(jì)時(shí)間,ac_val為完成該動(dòng)作后的累加效果,ac_dis為完成該動(dòng)作后的累加距離,OA為OutputAction縮寫,其他參數(shù)意義和輸入動(dòng)作相同。 解序列是求解出來的UCAV/UCGV可以直接執(zhí)行的動(dòng)作序列,為解動(dòng)作的有序集合,即 OAS={OA1,OA2,…,OAm}, (6) 式中,OAS為OutputActionSequence的縮寫。 UCAV/UCGV進(jìn)行任務(wù)規(guī)劃時(shí)需要滿足一定的約束條件,這些約束可以是任務(wù)規(guī)劃初始時(shí)設(shè)置的,也可以是戰(zhàn)場(chǎng)環(huán)境中突發(fā)的任務(wù)約束,約束形式化表示為[1,14]: constraint=2.2 動(dòng)作集合
2.3 解動(dòng)作
2.4 解序列
2.5 約束