(1.北京空間技術(shù)研制試驗(yàn)中心,北京 100094; 2.北京衛(wèi)星制造廠(chǎng)有限公司,北京 100094)
隨著載人深空探測(cè)活動(dòng)的深入推進(jìn),未來(lái)航天器的任務(wù)在高可靠性和高安全性的基礎(chǔ)上,面臨著系統(tǒng)規(guī)模龐大且功能復(fù)雜、信息類(lèi)別多且數(shù)據(jù)量大、天地通信約束嚴(yán)苛(高時(shí)延、帶寬有限、通信窗口限定)、地面操控難度大等新形勢(shì)。現(xiàn)有航天器的局部自主的技術(shù)水平難以滿(mǎn)足后續(xù)任務(wù)需求,在軌航天器需要自主規(guī)劃并執(zhí)行命令,不斷根據(jù)實(shí)施的情況和環(huán)境的變化做出合理的調(diào)整,最終完成目標(biāo)任務(wù)。多個(gè)航天器配合的任務(wù)尤其需要航天器的自主運(yùn)行能力。
目前國(guó)內(nèi)外的研究中,針對(duì)航天器的任務(wù)規(guī)劃的研究主要針對(duì)單航天器的研究和應(yīng)用,如NASA應(yīng)用在觀(guān)測(cè)衛(wèi)星EO-1的CASPER系統(tǒng)[1],應(yīng)用在天文望遠(yuǎn)鏡HST、JWST的SPIKE系統(tǒng)[2]、ESA應(yīng)用在無(wú)人探測(cè)器Rosetta的RSSC系統(tǒng)[3],國(guó)內(nèi)應(yīng)用在某遙感衛(wèi)星的基于有向圖的任務(wù)指令生成算法[4]。針對(duì)多航天器的任務(wù)規(guī)劃研究和應(yīng)用較少[5-6]。本文在分析多航天器任務(wù)特點(diǎn)基礎(chǔ)上,重點(diǎn)研究多航天器的協(xié)同任務(wù)規(guī)劃問(wèn)題,對(duì)后續(xù)大規(guī)模航天活動(dòng)具有理論和應(yīng)用意義。
多航天器任務(wù)按照航天器交互方式,可分為兩種:一種是同構(gòu)式航天器交互,多航天器作為有機(jī)整體,接到統(tǒng)一任務(wù)后,將任務(wù)按協(xié)商分配或者招投標(biāo)的方式向單個(gè)航天器派出任務(wù);一種是異構(gòu)式航天器交互,多航天器之間有機(jī)交互共同完成任務(wù)。
同構(gòu)式航天器一般選擇某一航天器作為決策航天器,其余航天器為成員航天器:決策航天器接收地面的統(tǒng)一任務(wù),負(fù)責(zé)與各成員航天器通信、協(xié)商,并發(fā)布任務(wù)信息,其作為任務(wù)分配的組織者和決策者,擁有共享的任務(wù)信息。成員航天器負(fù)責(zé)接收由決策航天器發(fā)來(lái)的任務(wù)需求,根據(jù)自身實(shí)際情況進(jìn)行約束評(píng)估,決定是否申請(qǐng)任務(wù)。決策航天器根據(jù)各成員航天器申請(qǐng)任務(wù)情況確定完成任務(wù)的航天器并進(jìn)行握手確認(rèn)[7]。同構(gòu)式航天器交互方式框圖見(jiàn)圖1所示。
圖1 同構(gòu)式航天器交互框圖
異構(gòu)式航天器需要多航天器間互相配合完成共同的任務(wù),可采用分層級(jí)的方式進(jìn)行協(xié)同任務(wù):高層級(jí)的航天器接收地面的統(tǒng)一任務(wù),根據(jù)統(tǒng)一任務(wù)需求進(jìn)行約束評(píng)估,并向低層級(jí)的航天器發(fā)布任務(wù)信息。低層級(jí)的航天器接收任務(wù)信息后,根據(jù)自身實(shí)際情況進(jìn)行約束評(píng)估,決定是否接收任務(wù)。高層級(jí)航天器根據(jù)低層次航天器任務(wù)接收情況進(jìn)行最終的任務(wù)確認(rèn)和發(fā)布。異構(gòu)式航天器交互方式框圖見(jiàn)圖2所示。
圖2 異構(gòu)式航天器交互框圖
多航天器系統(tǒng)作為一個(gè)整體自主完成任務(wù)目標(biāo),多航天器之間的任務(wù)協(xié)同,可將單個(gè)航天器視為單一的Agent,借鑒多Agent系統(tǒng)(Multi-Agent System,MAS)架構(gòu)進(jìn)行航天器間的任務(wù)協(xié)商。多航天器系統(tǒng)的協(xié)同任務(wù)結(jié)構(gòu)見(jiàn)圖3所示。
圖3 集中式多Agent系統(tǒng)示意圖
多航天器協(xié)同的自主任務(wù)體系結(jié)構(gòu)從邏輯上分為三層:底層針對(duì)航天器各分系統(tǒng),由各個(gè)自主的分系統(tǒng)Agent完成狀態(tài)監(jiān)測(cè)和局部控制;中層針對(duì)單個(gè)航天器整體,完成航天器的系統(tǒng)級(jí)自主;頂層是多航天器協(xié)同,決策、規(guī)劃調(diào)度任務(wù)。多航天器協(xié)同的自主任務(wù)體系結(jié)構(gòu)見(jiàn)圖4所示。
圖4 多航天器協(xié)同的自主任務(wù)體系結(jié)構(gòu)圖
2.2.1 多航天器協(xié)同層
多航天器協(xié)同層進(jìn)行與各航天器的交互協(xié)同,完成航天器的任務(wù)規(guī)劃,包含任務(wù)規(guī)劃Agent、接口處理Agent和任務(wù)池。
接口處理Agent負(fù)責(zé)航天器間信息的傳遞,一方面接收其它航天器Agent的信息,另一方面將接收到的系統(tǒng)級(jí)FDIR實(shí)時(shí)狀態(tài)信息傳遞給其它的航天器Agent。此外,接口處理Agent接收地面命令,保證地面的控制介入能力。接口處理Agent接收系統(tǒng)級(jí)FDIR實(shí)時(shí)反饋的狀態(tài)信息,任務(wù)規(guī)劃Agent接收來(lái)自接口處理Agent的任務(wù),與航天器模型交互進(jìn)行任務(wù)約束檢查,完成任務(wù)規(guī)劃和分解,主要包括多航天器系統(tǒng)協(xié)同任務(wù)向航天器任務(wù)的分解,系統(tǒng)重構(gòu)過(guò)程中的任務(wù)重新規(guī)劃。任務(wù)規(guī)劃Agent還完成對(duì)任務(wù)的調(diào)度,當(dāng)多個(gè)相互沖突的任務(wù)同時(shí)發(fā)生時(shí),任務(wù)規(guī)劃Agent根據(jù)任務(wù)優(yōu)先級(jí)進(jìn)行排序,達(dá)到消解沖突的目的。
任務(wù)池存放任務(wù)規(guī)劃Agent的合規(guī)性任務(wù),既作為下層Agent執(zhí)行任務(wù)的輸入,也接收更新任務(wù)的執(zhí)行完成情況。任務(wù)池接收地面的管理操作,執(zhí)任務(wù)刪除、調(diào)整等命令。
2.2.2 系統(tǒng)層
航天器系統(tǒng)層接收多航天器協(xié)同層的任務(wù)信息,對(duì)航天器進(jìn)行整體協(xié)調(diào)和控制。航天器系統(tǒng)層包括中心控制Agent、系統(tǒng)級(jí)FDIR和航天器模型。
中心控制Agent是航天器內(nèi)部任務(wù)規(guī)劃的控制中心,也是多航天器協(xié)同層與分系統(tǒng)層的紐帶,將多航天器協(xié)同層分配的任務(wù)進(jìn)行分解,根據(jù)航天器模型以及資源使用情況將任務(wù)解析為動(dòng)作,直至解析到詳細(xì)的控制指令序列,并傳遞給下層的分系統(tǒng)Agent。同時(shí),協(xié)調(diào)各個(gè)分系統(tǒng)Agent,解決各個(gè)分系統(tǒng)自主工作引起的資源沖突。
系統(tǒng)級(jí)FDIR從整體上對(duì)航天器進(jìn)行狀態(tài)監(jiān)測(cè)、性能評(píng)估和故障診斷,并在出現(xiàn)故障時(shí)給出解決方案。
航天器模型反映航天器設(shè)計(jì)狀態(tài),實(shí)時(shí)接收各分系統(tǒng)Agent的狀態(tài)信息進(jìn)行模型狀態(tài)對(duì)比,將結(jié)果反饋上層的任務(wù)規(guī)劃Agent和本級(jí)的中心控制Agent用于任務(wù)規(guī)劃和解析。
2.2.3 分系統(tǒng)層
航天器通常由多個(gè)分系統(tǒng)組成,它們具有相對(duì)獨(dú)立的功能,能完成各自的子任務(wù)。分統(tǒng)層由分系統(tǒng)Agent 組成,各分系統(tǒng)Agent 的功能如下:
1)姿軌控制Agent,進(jìn)行姿態(tài)捕獲、姿態(tài)和軌道確定及控制;
2)環(huán)熱控制Agent,測(cè)量航天器溫度、濕度、壓力、濃度并進(jìn)行調(diào)節(jié);
3)信息控制Agent,實(shí)現(xiàn)航天器的數(shù)據(jù)管理、傳輸和鏈路控制;
4)能源控制Agent,管理航天器發(fā)電和配電;
5)載荷控制Agent,對(duì)有效載荷進(jìn)行監(jiān)測(cè)和控制。
各分系統(tǒng)Agent的結(jié)構(gòu)相同,均包含狀態(tài)監(jiān)測(cè)、局部控制、系統(tǒng)軟硬件三個(gè)部分。各分系統(tǒng)Agent一方面接受上層控制指令并完成相應(yīng)的功能;另一方面對(duì)外部環(huán)境的變化做出反應(yīng),處理異常情況,實(shí)現(xiàn)自我管理。
自主任務(wù)管理的核心算法是求解規(guī)劃問(wèn)題,目前用于規(guī)劃問(wèn)題的求解算法主要有圖規(guī)劃、基于啟發(fā)式狀態(tài)空間搜索的規(guī)劃、約束可滿(mǎn)足規(guī)劃、分層規(guī)劃和基于模型檢測(cè)的規(guī)劃等。任務(wù)規(guī)劃可分為正常任務(wù)規(guī)劃和動(dòng)態(tài)任務(wù)規(guī)劃,正常任務(wù)規(guī)劃可采用SGPlan算法用于單個(gè)任務(wù)的解析,動(dòng)態(tài)任務(wù)規(guī)劃可用于緊急或故障后的任務(wù)排序。
SGPlan是一款基于目標(biāo)分解技術(shù)的規(guī)劃器,他由Yixin Chen等人聯(lián)合開(kāi)發(fā),最開(kāi)始在2004年提出,并陸續(xù)優(yōu)化[8]。SGPlan的基本思想將原始問(wèn)題分解為多個(gè)子問(wèn)題,每個(gè)子問(wèn)題都有對(duì)應(yīng)的子目標(biāo),然后利用改進(jìn)的Metric-FF來(lái)求解各個(gè)子問(wèn)題,最后消解子目標(biāo)間的沖突。
假定單個(gè)航天器接收到某一任務(wù),任務(wù)需要相關(guān)功能A、B、C協(xié)同完成。按照SGPlan算法,將任務(wù)P分解為子任務(wù)SA、SB、SC,子任務(wù)SA、SB、SC包含動(dòng)作[a1]~[an]、[b1]~[bn]、[c1]~[cn]以及狀態(tài)a1~an、b1~bn、c1~cn,具體見(jiàn)圖5所示。
圖5 任務(wù)分解到子任務(wù)
航天器完成任務(wù)規(guī)劃即是從初始狀態(tài)P在滿(mǎn)足各種約束的條件下走向目標(biāo)狀態(tài)G的可行路徑。約束指的是狀態(tài)、動(dòng)作之間的相互邏輯關(guān)系。對(duì)于比較確定的任務(wù),可以將P到G的路徑提前確定,航天器在軌規(guī)劃時(shí)僅需根據(jù)當(dāng)前的任務(wù)參數(shù)求解路徑中的動(dòng)作時(shí)間。對(duì)于僅明確約束的任務(wù),可采用路徑搜索的方法規(guī)劃各種路徑,然后與約束匹配,得出可行路徑。
圖6 任務(wù)路徑求解搜索示意圖
對(duì)于航天器發(fā)生故障或者有臨時(shí)任務(wù)需要調(diào)整任務(wù)執(zhí)行的,可采用啟發(fā)式搜索方法,將任務(wù)排序關(guān)注的設(shè)定為啟發(fā)評(píng)估值設(shè)H(a),例如將H(a)設(shè)定為采用Rm任務(wù)后可執(zhí)行任務(wù)的數(shù)量。算法示意圖如圖7所示。
圖7 加入修正任務(wù)計(jì)劃序列后的任務(wù)排序算法示意
圖中,S為起始節(jié)點(diǎn),其余每個(gè)節(jié)點(diǎn)均有H(a)用于評(píng)估節(jié)點(diǎn)值,從S節(jié)點(diǎn)出發(fā)向下擴(kuò)展節(jié)點(diǎn),從子節(jié)點(diǎn)中選取H(a)為最大的節(jié)點(diǎn),并將該節(jié)點(diǎn)設(shè)為新的初始節(jié)點(diǎn),不斷循環(huán),最終求解出任務(wù)序列。
為了對(duì)多航天器協(xié)同的自主任務(wù)規(guī)劃方法進(jìn)行驗(yàn)證,選取三個(gè)航天器協(xié)同在軌進(jìn)行推進(jìn)劑補(bǔ)加的應(yīng)用場(chǎng)景進(jìn)行仿真,包括核心控制航天器A、攜帶燃料的補(bǔ)加航天器B、待補(bǔ)加航天器C。航天器A為???、中轉(zhuǎn)平臺(tái);航天器C在軌大部分時(shí)間為獨(dú)立飛行,可與航天器A進(jìn)行對(duì)接,??亢箝_(kāi)展燃料補(bǔ)加、維修等任務(wù);航天器B為補(bǔ)加航天器,由地面按需發(fā)射,入軌后與航天器A對(duì)接,用于向航天器A、C提供推進(jìn)燃料等資源。
推進(jìn)補(bǔ)加需要A、B、C三個(gè)航天器協(xié)同完成,因此采用異構(gòu)式航天器的合作式協(xié)同方式(見(jiàn)圖2)。仿真場(chǎng)景設(shè)定為:航天器C推進(jìn)劑剩余量低于門(mén)限值,向航天器A發(fā)出補(bǔ)加協(xié)同請(qǐng)求,航天器A進(jìn)行整體地統(tǒng)一任務(wù)約束評(píng)估通過(guò)后,向航天器B和C發(fā)布補(bǔ)加任務(wù)信息;航天器B、C接收任務(wù)后進(jìn)行自身資源及健康狀態(tài)評(píng)估,航天器A根據(jù)各航天器的評(píng)估結(jié)果確認(rèn)是否滿(mǎn)足本次任務(wù)需求,并向航天器A、B、C發(fā)布任務(wù);航天器A、B、C根據(jù)統(tǒng)一任務(wù)指令協(xié)同開(kāi)展任務(wù)規(guī)劃,進(jìn)一步分解為航天器內(nèi)部的子任務(wù)、動(dòng)作和指令。任務(wù)規(guī)劃過(guò)程中,若單個(gè)航天器的狀態(tài)不滿(mǎn)足任務(wù)要求時(shí),再提交航天器A進(jìn)行統(tǒng)一的再協(xié)同,直至任務(wù)通過(guò)或任務(wù)終止。
針對(duì)推進(jìn)補(bǔ)加仿真算例,建立航天器Agent及航天器內(nèi)部分系統(tǒng)Agent。每個(gè)航天器內(nèi)部包括任務(wù)規(guī)劃Agent、接口處理Agent、中心控制Agent、系統(tǒng)FDIR,并根據(jù)任務(wù)需求配置姿軌控制Agent、能源控制Agent和推進(jìn)補(bǔ)加Agent,見(jiàn)圖8所示。
圖8 推進(jìn)補(bǔ)加多Agent仿真模型
仿真任務(wù)過(guò)程包括交會(huì)、對(duì)接、推進(jìn)補(bǔ)加三個(gè)過(guò)程,其中航天器A、航天器C全程參與三個(gè)過(guò)程,航天器B僅參加推進(jìn)補(bǔ)加一個(gè)過(guò)程。因此,航天器A、C的功能Agent包含了能源控制Agent、姿軌控制Agent和推進(jìn)補(bǔ)加Agent,航天器B僅建立能源控制Agent和推進(jìn)補(bǔ)加Agent。
采用基于FIPA規(guī)范[9]的JADE平臺(tái)[10]對(duì)航天器A、航天器B、航天器C的任務(wù)協(xié)同過(guò)程進(jìn)行仿真,通過(guò)仿真,各航天器的中心控制Agent均接受了航天器級(jí)的任務(wù),仿真結(jié)果見(jiàn)圖9所示。圖中,REQUEST表示請(qǐng)求通信方式,INFORM表示通知通信方式。
圖9 推進(jìn)補(bǔ)加過(guò)程中各Agent間協(xié)同過(guò)程
航天器完成各航天器間的協(xié)同后,中心控制體Agent進(jìn)行任務(wù)解析,以航天器A在補(bǔ)加過(guò)程的任務(wù)解析為例,補(bǔ)加任務(wù)解析為能源子任務(wù)、姿軌控制子任務(wù)、補(bǔ)加子任務(wù),每個(gè)子任務(wù)又可解析為相關(guān)動(dòng)作,見(jiàn)圖10所示。圖中,能源子任務(wù)a2是姿軌子任務(wù)進(jìn)行姿態(tài)調(diào)整動(dòng)作的前置約束,姿軌子任務(wù)b2是能源子任務(wù)進(jìn)行帆板跟蹤的前置約束,b3是補(bǔ)加子任務(wù)進(jìn)行真空放氣動(dòng)作的前置約束。
圖10 航天器A補(bǔ)加任務(wù)解析圖
將任務(wù)的起始時(shí)間代入,按照任務(wù)解析圖的邏輯關(guān)系將動(dòng)作解析成指令,完成任務(wù)到指令的規(guī)劃。采用Matlab進(jìn)行仿真,結(jié)果見(jiàn)圖11、圖12所示。
圖11 補(bǔ)加任務(wù)解析前動(dòng)作圖(初始)
圖12 補(bǔ)加任務(wù)解析前動(dòng)作圖(完成)
由圖可見(jiàn),程序按照?qǐng)D10進(jìn)行規(guī)劃解析,運(yùn)算得到:①帆板歸零、②姿態(tài)調(diào)整、③姿態(tài)穩(wěn)定、④帆板跟蹤、⑤真空放氣、⑥氣體回抽、⑦補(bǔ)加、⑧恢復(fù)的動(dòng)作指令序列。
本文提出了一種多航天器協(xié)同的自主任務(wù)體系結(jié)構(gòu),給出了基于Agent的體系結(jié)構(gòu)的基本框架和功能描述,并進(jìn)行了算法設(shè)計(jì),最終以三個(gè)航天器協(xié)同開(kāi)展推進(jìn)劑補(bǔ)加為例進(jìn)行了驗(yàn)證。仿真結(jié)果證明,本文提出的基于Agent的協(xié)同架構(gòu)以及基于SGplan的算法可以滿(mǎn)足多航天器協(xié)同自主任務(wù)規(guī)劃需求。