朱立穎,葉志玲,李玉慶,付中梁,徐 勇
(1.北京空間飛行器總體設(shè)計(jì)部,北京 100094;2.哈爾濱工業(yè)大學(xué)航天學(xué)院,哈爾濱 150001;3.國(guó)家國(guó)防科工局探月與航天工程中心,北京 100190)
小天體探測(cè)作為深空探測(cè)的重要組成部分,是人類探索和開(kāi)發(fā)浩瀚宇宙的主要途徑,世界各國(guó)都競(jìng)相開(kāi)展各自的小天體探測(cè)任務(wù)和計(jì)劃,掀起了新一輪深空探測(cè)活動(dòng)的熱潮。小天體探測(cè)航行距離遠(yuǎn)、時(shí)間長(zhǎng),探測(cè)任務(wù)復(fù)雜,通過(guò)上傳詳細(xì)命令序列的方式來(lái)操作和控制小天體探測(cè)器的方法受到嚴(yán)峻地挑戰(zhàn)。探測(cè)器與地球距離的增加,以光速傳輸數(shù)據(jù)的通訊時(shí)間延遲可能達(dá)到半個(gè)小時(shí)之多;探測(cè)器與地球之間存在遮擋,可能造成長(zhǎng)時(shí)間與地球失去聯(lián)系;通過(guò)地面發(fā)送指令來(lái)控制的方式是開(kāi)環(huán)控制,某個(gè)命令稍有錯(cuò)誤便會(huì)引起數(shù)據(jù)的丟失,甚至整個(gè)任務(wù)的失?。辉诿钚蛄袌?zhí)行過(guò)程中的意外的硬件故障和環(huán)境的不可預(yù)期變化將引起探測(cè)器的狀態(tài)偏離,從而導(dǎo)致探測(cè)器拋棄上傳序列并進(jìn)入安全模式,等待地面再次產(chǎn)生新的命令序列。因此小天體探測(cè)自主任務(wù)規(guī)劃技術(shù)受到廣泛關(guān)注。
對(duì)于自主任務(wù)規(guī)劃技術(shù),國(guó)外以美國(guó)為代表,已經(jīng)開(kāi)發(fā)了一些規(guī)劃系統(tǒng),例如美國(guó)國(guó)家航空航天局(National Aeronautics and Space Administration,NASA)針對(duì)火星探測(cè)器研發(fā)了MAPGEN[1]、Mr SPOCK[2]和SPIFE[3]任務(wù)規(guī)劃系統(tǒng);針對(duì)以哈勃望遠(yuǎn)鏡為代表的太空望遠(yuǎn)鏡開(kāi)發(fā)了SPIKE任務(wù)規(guī)劃系統(tǒng)。
本文面向小行星探測(cè)的自主繞飛探測(cè)任務(wù)進(jìn)行智能規(guī)劃研究,針對(duì)平臺(tái)自主管理和載荷自主規(guī)劃兩大需求,分別進(jìn)行模型建立與算法設(shè)計(jì),并開(kāi)發(fā)仿真系統(tǒng)進(jìn)行綜合驗(yàn)證。旨在減少探測(cè)器對(duì)深空測(cè)控網(wǎng)絡(luò)的依賴、降低深空探測(cè)任務(wù)由地面站收集信息、處理、形成命令序列的操作代價(jià),從而提高實(shí)時(shí)控制能力和故障應(yīng)對(duì)能力,保持長(zhǎng)期穩(wěn)定在軌運(yùn)行。
當(dāng)前小天體探測(cè)以飛越、繞飛、著陸和采樣等探測(cè)任務(wù)和目標(biāo)為主。小天體探測(cè)任務(wù)復(fù)雜性對(duì)自主規(guī)劃需求主要體現(xiàn)在以下幾個(gè)方面。
1)具備自我診斷及管理能力
器上平臺(tái)系統(tǒng)是小天體探測(cè)器的保障,在不依賴地面控制的前提下,需具備核心設(shè)備自主管理能力。關(guān)注資源控制、健康監(jiān)測(cè)等保障小天體探測(cè)器正確運(yùn)行的基本任務(wù)。
2)具備應(yīng)對(duì)未知風(fēng)險(xiǎn)的能力
在軌運(yùn)行將面臨日凌或太陽(yáng)耀斑爆發(fā)等情況,日凌可導(dǎo)致器地通信中斷。探測(cè)器在該階段具有脫離地面測(cè)控的穩(wěn)定運(yùn)行能力。同時(shí)依據(jù)測(cè)定軌信息完成進(jìn)出日凌自主管理,自主切換至日凌期工作模式。
3)具備關(guān)鍵事件的可靠執(zhí)行能力
在小天體探測(cè)器的整個(gè)任務(wù)階段,有若干個(gè)影響任務(wù)成敗的關(guān)鍵事件,例如器箭分離、與小行星交會(huì)、探測(cè)器下降等。這些事件時(shí)序要求強(qiáng),不能中斷。如何讓器上執(zhí)行這些關(guān)鍵事件時(shí),不受測(cè)控鏈路因素的影響,提高關(guān)鍵事件完成的可靠性與精準(zhǔn)性。
4)具備連續(xù)自主運(yùn)行能力
隨著深空探測(cè)任務(wù)的增加,由于地面站資源有限,操作人員將無(wú)法經(jīng)常對(duì)各個(gè)航天器進(jìn)行管理,此時(shí)就迫切需要深空探測(cè)器具有長(zhǎng)期連續(xù)自主運(yùn)行能力。
5)具備面向科學(xué)任務(wù)的自主規(guī)劃處理能力
隨著技術(shù)的成熟和發(fā)展,自主技術(shù)將會(huì)更注重深空探測(cè)任務(wù)的核心目標(biāo)——科學(xué)目標(biāo)的實(shí)現(xiàn)程度,此時(shí)自主系統(tǒng)將重點(diǎn)突出科學(xué)數(shù)據(jù)的處理、科學(xué)現(xiàn)象的在軌發(fā)現(xiàn)、突發(fā)科學(xué)事件的自主跟蹤觀測(cè)等面向科學(xué)的自主功能。
小天體自主繞飛探測(cè)是適宜驗(yàn)證自主運(yùn)行能力的典型任務(wù)場(chǎng)景,其任務(wù)需求包含前期普查、后期重點(diǎn)區(qū)域詳查、能源安全、載荷數(shù)據(jù)傳輸、遙測(cè)數(shù)據(jù)回傳等典型需求。小行星繞飛探測(cè)任務(wù)需求的特點(diǎn)和難點(diǎn)主要體現(xiàn)在需要在短時(shí)間內(nèi)完成對(duì)小行星的普查和詳查,并尋找到最佳著陸點(diǎn),實(shí)現(xiàn)平臺(tái)和載荷資源的高效利用。本文以小天體自主繞飛探測(cè)為目標(biāo),研究了智能規(guī)劃設(shè)計(jì)方法。
小天體自主繞飛探測(cè)任務(wù)中,首先需要規(guī)劃管理探測(cè)器系統(tǒng)來(lái)保障基本的系統(tǒng)運(yùn)行和任務(wù)執(zhí)行,探測(cè)器系統(tǒng)包括許多分系統(tǒng),例如姿態(tài)控制系統(tǒng)、導(dǎo)航系統(tǒng)、電源系統(tǒng)、推進(jìn)系統(tǒng)等許多分系統(tǒng),而且這些分系統(tǒng)的運(yùn)行是相互耦合的。其次需要對(duì)探測(cè)目標(biāo),結(jié)合存儲(chǔ)、能源、通信等多種約束進(jìn)行任務(wù)規(guī)劃,確定探測(cè)任務(wù)何時(shí)開(kāi)始、何時(shí)結(jié)束及何種探測(cè)載荷執(zhí)行,充分、合理地利用珍貴而有限的探測(cè)資源。這兩部分的規(guī)劃優(yōu)化相互耦合,形成閉環(huán)。具體耦合方式如圖1、解決方案如圖2所示,本文將智能規(guī)劃系統(tǒng)根據(jù)任務(wù)需求分解為平臺(tái)自主管理及載荷自主規(guī)劃,分別針對(duì)規(guī)劃特點(diǎn)開(kāi)展了規(guī)劃設(shè)計(jì)工作。
圖1 需求關(guān)系圖Fig.1 Mission requirements
圖2 總體方案圖Fig.2 Overall schematic diagram
針對(duì)探測(cè)器領(lǐng)域的特點(diǎn),引入面向?qū)ο笾R(shí)表示方式,基于PDDL(Planning Domain Definition Language,PDDL)[4]語(yǔ)言將活動(dòng)的時(shí)間信息、資源信息以及活動(dòng)之間的約束等信息進(jìn)行描述,建立適合探測(cè)器領(lǐng)域的規(guī)劃知識(shí)模型。
PDDL是傳統(tǒng)規(guī)劃領(lǐng)域編碼標(biāo)準(zhǔn)語(yǔ)言,包含了規(guī)劃領(lǐng)域最早的領(lǐng)域描述語(yǔ)言STRIPS[5]和具有更豐富表達(dá)能力和建模能力的ADL,給出了詳細(xì)的規(guī)劃的語(yǔ)法和語(yǔ)義,可以方便地描述謂詞、目標(biāo)、活動(dòng)、初始狀態(tài)等。一般形式如下:
(define(domain
[....]
)
主要針對(duì)數(shù)傳、電源、存儲(chǔ)及有效載荷幾個(gè)分系統(tǒng),建立探測(cè)器自主管理知識(shí)模型。基于PDDL語(yǔ)言描述的探測(cè)器自主管理知識(shí)模型主要包括域文件(Domain file)和問(wèn)題文件(Problem file),其中,域文件(Domain file)主要用于描述衛(wèi)星任務(wù)規(guī)劃領(lǐng)域的通用知識(shí),問(wèn)題文件(Problem file)主要用于描述與具體規(guī)劃問(wèn)題相關(guān)的內(nèi)容。通過(guò)表1~4 展示部分表格,示意知識(shí)模型結(jié)構(gòu)。
表1 域文件對(duì)象類型表Table 1 Domain file object type table
表2 部分域文件Table 2 Dommain file
表3 部分動(dòng)作描述表Table 3 Partial action description table
表4 問(wèn)題文件示意Table 4 Problem file
解決知識(shí)表示問(wèn)題之后,針對(duì)探測(cè)器自主管理知識(shí)模型設(shè)計(jì)求解算法,以達(dá)到針對(duì)地面上注的某一高級(jí)任務(wù)指令,由探測(cè)器自主進(jìn)行規(guī)劃搜索、分配資源和時(shí)間、建立指令序列,最終完成預(yù)期任務(wù)的目的。
采用狀態(tài)及狀態(tài)時(shí)間線對(duì)航天器規(guī)劃問(wèn)題進(jìn)行描述,提出一種基于狀態(tài)擴(kuò)展的深空探測(cè)器自主任務(wù)規(guī)劃算法,算法根據(jù)給定的初始狀態(tài)、中止?fàn)顟B(tài)和要實(shí)現(xiàn)的目標(biāo)任務(wù)進(jìn)行擴(kuò)展,其主要是通過(guò)時(shí)間線內(nèi)和時(shí)間線間的不斷擴(kuò)展,直至滿足所有約束。具體過(guò)程如圖3所示。
任務(wù)規(guī)劃是一個(gè)規(guī)劃與調(diào)度過(guò)程,其中規(guī)劃為生成能夠?qū)崿F(xiàn)目標(biāo)的任務(wù)指令序列,而調(diào)度是完成任務(wù)指令序列的處理,以使其能夠滿足資源的約束。本文采用規(guī)劃和調(diào)度分開(kāi)的方式,即先在不考慮資源的情況下生成任務(wù)序列,然后再加入資源時(shí)間線,進(jìn)一步擴(kuò)展,最后獲得與狀態(tài)時(shí)間線對(duì)應(yīng)的動(dòng)作序列,從而完成最終的任務(wù)規(guī)劃。
圖3 基于狀態(tài)擴(kuò)展的任務(wù)規(guī)劃流程Fig.3 Task planning algorithms based on state extension
探測(cè)器飛行過(guò)程中進(jìn)行的任務(wù)規(guī)劃可以簡(jiǎn)單地理解為確定飛行任務(wù)目標(biāo)并根據(jù)飛行任務(wù)目標(biāo)制定控制探測(cè)器運(yùn)行的任務(wù)方案。對(duì)深空探測(cè)器來(lái)說(shuō),一旦投入使用,所有探測(cè)器上活動(dòng)都必須在計(jì)算速度、存儲(chǔ)器空間、電源等資源環(huán)境固定的條件下進(jìn)行,而且不可能對(duì)系統(tǒng)進(jìn)行資源擴(kuò)充。在這種資源一定的情況下,探測(cè)器的任務(wù)規(guī)劃就可以歸結(jié)到典型的資源受限的規(guī)劃與調(diào)度問(wèn)題。本文所涉及的探測(cè)器任務(wù)規(guī)劃與調(diào)度的概念和算法就是在此基礎(chǔ)上進(jìn)行論述的。探測(cè)器任務(wù)規(guī)劃問(wèn)題是動(dòng)態(tài)的,它的動(dòng)態(tài)特性是由于飛行任務(wù)目標(biāo)的可變性、狀態(tài)信息的不完整、不可預(yù)見(jiàn)的干擾等特性造成的。
為簡(jiǎn)化建模問(wèn)題,本文對(duì)探測(cè)器任務(wù)自主規(guī)劃問(wèn)題做出以下合理假設(shè)[6-7]:
1)活動(dòng)是不可分離的,即一項(xiàng)活動(dòng)一旦開(kāi)始,就必須一直進(jìn)行到完成,中途不許中斷;
2)允許活動(dòng)因資源沖突而等待;
3)在某活動(dòng)的進(jìn)行過(guò)程中系統(tǒng)所獲得的資源是恒定的,活動(dòng)所需的資源也是恒定的。
根據(jù)深空探測(cè)領(lǐng)域的特點(diǎn),給出深空探測(cè)器任務(wù)規(guī)劃問(wèn)題的形式化定義:
定義1深空探測(cè)器任務(wù)規(guī)劃問(wèn)題Φ用一個(gè)五元組描述
給定這樣一個(gè)規(guī)劃問(wèn)題,下一步任務(wù)就是根據(jù)目標(biāo)要求和系統(tǒng)初始狀態(tài),找到規(guī)劃問(wèn)題的解,即找到一組有序活動(dòng)使其滿足所有約束,并且在執(zhí)行以后能夠達(dá)到所要求的目標(biāo)狀態(tài)。
定義2規(guī)劃問(wèn)題Φ=
的解是一個(gè)n元組其中且滿足:
3)活動(dòng)的執(zhí)行最終結(jié)果狀態(tài)集合包含目標(biāo)集G。
規(guī)劃問(wèn)題所有解的集合定義為ΓP。
小行星探測(cè)任務(wù)規(guī)劃問(wèn)題的關(guān)鍵約束條件的數(shù)學(xué)表達(dá),包括目標(biāo)觀測(cè)約束、觀測(cè)時(shí)間窗約束和衛(wèi)星唯一觀測(cè)約束等。
假設(shè)規(guī)劃過(guò)程包括n個(gè)設(shè)計(jì)活動(dòng),n∈A,系統(tǒng)可獲得m種資源,每種資源的數(shù)量已給定。本文設(shè)定了3種探測(cè)器任務(wù)規(guī)劃問(wèn)題的優(yōu)化目標(biāo):
1)目標(biāo)函數(shù)一:觀測(cè)目標(biāo)收益最大
2)目標(biāo)函數(shù)二:觀測(cè)目標(biāo)數(shù)目最大
3)目標(biāo)函數(shù)三:總執(zhí)行時(shí)間最短
探測(cè)器任務(wù)規(guī)劃問(wèn)題作為一個(gè)帶有時(shí)間窗約束的復(fù)雜組合優(yōu)化問(wèn)題,使用傳統(tǒng)優(yōu)化算法對(duì)其求解時(shí)雖然能夠以較少的時(shí)間獲取一定質(zhì)量的解,但實(shí)踐證明該解仍有較大的提升空間。相比之下,遺傳算法能夠獲取質(zhì)量更高的解。遺傳算法的基本原理是通過(guò)適宜的方式進(jìn)行編碼,隨機(jī)得到初始種群,基于目標(biāo)函數(shù)計(jì)算適應(yīng)值,每代選擇適應(yīng)值高的個(gè)體進(jìn)行保留,并用于交叉、變異得到子代,始終保留最優(yōu)個(gè)體,當(dāng)滿足終止條件時(shí)用于輸出。從遺傳算法的原理可知,遺傳算法是一種隨機(jī)性的搜索算法,需要逐步在整個(gè)解空間中搜索,對(duì)航天器的任務(wù)規(guī)劃問(wèn)題的決策變量數(shù)量多,與之相應(yīng)的解空間也自然巨大,因此算法時(shí)間開(kāi)銷較大;同時(shí),由于GA是一種隨機(jī)性算法,算法的實(shí)用性要求求解對(duì)地觀測(cè)星群任務(wù)規(guī)劃的遺傳算法必須能夠穩(wěn)定地獲取高質(zhì)量的解,這也是GA設(shè)計(jì)的一個(gè)難點(diǎn)。
適應(yīng)值是遺傳算法中選擇的方向和標(biāo)志,本文直接將數(shù)學(xué)模型中的目標(biāo)函數(shù)(1)選取為適應(yīng)值函數(shù)。完整的遺傳算法求解模型為
在利用遺傳算法進(jìn)行衛(wèi)星任務(wù)規(guī)劃時(shí),常采用二進(jìn)制編碼方式,考慮場(chǎng)景設(shè)置中規(guī)劃的時(shí)長(zhǎng)周期可能較長(zhǎng),目標(biāo)的可見(jiàn)時(shí)間窗口數(shù)量很多,采用二進(jìn)制編碼方式時(shí)染色體過(guò)長(zhǎng),而染色體的每一位都需要利用約束條件進(jìn)行沖突檢查,這將導(dǎo)致運(yùn)算時(shí)間過(guò)長(zhǎng),降低算法效率,所以在這里采用了實(shí)數(shù)編碼的方式,如圖4所示。
圖4 遺傳算法實(shí)數(shù)編碼方式Fig.4 Real Number coding of genetic algorithms
染色體每一位代表一個(gè)目標(biāo)。例如,對(duì)于全體目標(biāo)集合I中的一個(gè)目標(biāo)i,它對(duì)應(yīng)染色體的第i位,假設(shè)這一位的取值為wi,目標(biāo)i對(duì)于探測(cè)器一共有ni個(gè)可見(jiàn)窗口將每一個(gè)時(shí)間窗口編號(hào)使其分別與1~ni一一對(duì)應(yīng),則染色體在該位的取值wi為這ni個(gè)自然數(shù)中的一個(gè),表示這一目標(biāo)的觀測(cè)任務(wù)選擇目標(biāo)i的第wi個(gè)時(shí)間窗口來(lái)完成。這樣就建立了染色體與問(wèn)題的搜索空間的點(diǎn)之間的映射關(guān)系。本文設(shè)計(jì)的遺傳算法流程圖見(jiàn)如圖5。
第1步:對(duì)每一個(gè)任務(wù)按照實(shí)數(shù)編碼方式進(jìn)行編碼,產(chǎn)生初始種群。
圖5 算法流程Fig.5 Arithmetic flow
第2步:考慮各種約束條件對(duì)染色體每一位即每一任務(wù)進(jìn)行約束沖突檢查,沒(méi)有通過(guò)沖突檢查的任務(wù)則放棄執(zhí)行,令染色體該位的值為0。
第3步:完成檢查后計(jì)算每一個(gè)體的目標(biāo)函數(shù)適應(yīng)值,獲得具有最高適應(yīng)值的最佳個(gè)體。
第4步:若滿足結(jié)束條件,則停止算法,轉(zhuǎn)向第5步;否則按選擇機(jī)制選擇個(gè)體進(jìn)入交配池,完成變異、交叉操作產(chǎn)生新個(gè)體,并進(jìn)行種群更新得到下一代種群,返回第2步。
第5 步:算法結(jié)束,獲得進(jìn)化之后的最佳個(gè)體,輸出相應(yīng)的規(guī)劃方案。
對(duì)上述方法開(kāi)發(fā)仿真系統(tǒng)進(jìn)行驗(yàn)證,計(jì)算獲得的指令序列的圖形化顯示,星上能源、光照、姿態(tài)角度變化情況的圖形化顯示等。如圖6~圖7所示。
圖6表明,該方法可綜合平臺(tái)與載荷需求,對(duì)小天體繞飛探測(cè)任務(wù)進(jìn)行統(tǒng)一的任務(wù)規(guī)劃,并得到指令序列和動(dòng)作序列,圖7表明該方法可在存儲(chǔ)、能源、通信等多種約束條件下,對(duì)任務(wù)規(guī)劃進(jìn)行優(yōu)化,提高任務(wù)管控的智能化程度,降低任務(wù)操作的復(fù)雜性,同時(shí)保障探測(cè)資源的合理使用及任務(wù)的充分完成。
圖6 深空探測(cè)器自主運(yùn)行仿真系統(tǒng)結(jié)果圖Fig.6 Simulation system diagram of deep space detector autonomous operation
圖7 觀測(cè)任務(wù)規(guī)劃優(yōu)化過(guò)程圖Fig.7 Observation mission planning optimization process chart
本文針對(duì)小天體探測(cè)自主繞飛智能規(guī)劃問(wèn)題,將該問(wèn)題分解為平臺(tái)任務(wù)智能規(guī)劃和載荷任務(wù)智能規(guī)劃兩部分。針對(duì)平臺(tái)任務(wù)智能規(guī)劃問(wèn)題,基于PDDL語(yǔ)言設(shè)計(jì)了探測(cè)器自主管理知識(shí)模型,提出了基于狀態(tài)時(shí)間線擴(kuò)展的求解算法;針對(duì)任務(wù)智能規(guī)劃問(wèn)題,建立了基于CSP問(wèn)題的智能規(guī)劃數(shù)學(xué)模型,提出了基于遺傳策略的求解算法。最后開(kāi)發(fā)了仿真系統(tǒng)進(jìn)行算法驗(yàn)證。仿真結(jié)果表明:該方法可綜合平臺(tái)與載荷需求,在存儲(chǔ)、能源、通信等多種約束條件下,對(duì)繞飛探測(cè)任務(wù)進(jìn)行統(tǒng)一的任務(wù)規(guī)劃,并得到指令序列和動(dòng)作序列,能夠提高任務(wù)管控的智能化程度,降低任務(wù)操作的復(fù)雜性。綜上,該方法對(duì)小天體探測(cè)具有一定的應(yīng)用意義和工程價(jià)值。
小天體探測(cè)智能規(guī)劃技術(shù)是后續(xù)小天體探測(cè)任務(wù)重要的技術(shù)支撐,后續(xù)智能規(guī)劃技術(shù)仍需從具有廣泛性和精確性的器上知識(shí)模型庫(kù)、動(dòng)態(tài)規(guī)劃能力、高速并行處理器等方面開(kāi)展持續(xù)的研究,支撐小行星自主探測(cè)及深空探測(cè)智能規(guī)劃的發(fā)展。