閻慧+吳止鍰+高永明+馬凱航
摘 要: 任務(wù)規(guī)劃技術(shù)是空間機器人實現(xiàn)自主在軌操控的核心,要進行規(guī)劃問題的求解,必須要將實際的規(guī)劃問題變?yōu)橛嬎銠C可理解語義的數(shù)據(jù)模型。雖然目前在人工智能規(guī)劃領(lǐng)域有多個成熟模型,且描述能力已經(jīng)較為完備,但是由于空間機器人在軌工作的特殊性,還沒有一種規(guī)劃模型可以直接應用。根據(jù)空間機器人任務(wù)規(guī)劃的要素和關(guān)系特性,在規(guī)劃領(lǐng)域定義語言(PDDL)的基礎(chǔ)上拓展了對資源和活動實例的定義,活動的持續(xù)時間和活動效果屬性,提高了描述的準確性。
關(guān)鍵詞: 空間機器人; 任務(wù)規(guī)劃; 自主在軌操控; 成熟模型
中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2017)04?0004?05
Research on mission planning model for on?orbit control of space robot
YAN Hui1, WU Zhihuan1,2, GAO Yongming1, MA Kaihang1
(1. The Academy of Equipment, Beijing 100416, China; 2. Unit 63883 of PLA, Luoyang 471000, China)
Abstract: Mission planning is the core of autonomous manipulation of space robot. There is no any planning model applied to space robot directly because of the operation particularity of space robot on orbit. Based on the planning domain definition language (PDDL), the resource definition, activity effect attribute and duration time are extended, and descriptive accuracy is improved according to the mission planning factors and relation characteristics of space robot.
Keywords: space robot; mission planning; autonomous on?orbit control; mature model
0 引 言
空間機器人任務(wù)規(guī)劃在任務(wù)確立到最終執(zhí)行過程中起到重要的作用。任務(wù)規(guī)劃過程是由空間機器人的狀態(tài)和規(guī)劃目標確定的規(guī)劃問題作為輸入,經(jīng)過一定的決策方式(自主或非自主)得到規(guī)劃結(jié)果。規(guī)劃的結(jié)果是空間機器人執(zhí)行的行動序列集合,空間機器人按照這個序列執(zhí)行行動能夠達到任務(wù)的規(guī)劃目標。在解決規(guī)劃問題之前,必須要對其進行合理的形式化描述。任務(wù)規(guī)劃模型的意義在于將規(guī)劃問題轉(zhuǎn)化為計算機可理解語義的數(shù)據(jù)。目前常用的規(guī)劃模型有STRIPS,ADL,PDDL,NDDL等。
STRIPS是經(jīng)典的規(guī)劃建模語言,也是其他規(guī)劃建模語言的原始模型。ADL在STRIPS的基礎(chǔ)上進行了擴展:狀態(tài)中引入了“”符號、開放世界假設(shè)、目標中具有量化變量、目標允許析取式、變量可以有類型、允許條件效果、增加了等式謂詞。通過這些擴展豐富了表述能力,使之更接近實際問題。PDDL是國際智能規(guī)劃競賽(IPC)的比賽語言,具有較完備的建模能力,將規(guī)劃問題描述為對象、謂詞、初始狀態(tài)、目標說明和活動的集合。PDDL至今已經(jīng)發(fā)展到3.1版本,其表達能力也不斷提升。許多領(lǐng)域中實際應用的規(guī)劃模型在PDDL的基礎(chǔ)上進行擴展產(chǎn)生,如NASA把在PDDL的基礎(chǔ)上擴展研究的NDDL作為其EUROPA框架的輸入語言。
1 規(guī)劃要素和關(guān)系
任務(wù)規(guī)劃由空間機器人任務(wù)目標驅(qū)動,任務(wù)目標通常用目標狀態(tài)、目標活動、任務(wù)周期等描述和限定規(guī)劃過程和結(jié)果的相關(guān)信息??臻g機器人的規(guī)劃結(jié)果是一個選擇的行動集合,每個行動代表空間機器人的一個工作事件,行動有時間、資源等信息,每個選擇的行動都要滿足關(guān)系限制。
1.1 規(guī)劃要素
(1) 行動(Action):行動由組成空間機器人載荷和操作能力決定,決定了系統(tǒng)的任務(wù)能力,例如規(guī)劃目標為,則系統(tǒng)必須具有能夠?qū)顟B(tài)變?yōu)榈腁ction。
(2) 資源(Resource):空間操作過程對資源的消耗非常敏感??臻g機器人的資源除燃料、電能等傳統(tǒng)意義上的資源外,還包括并發(fā)執(zhí)行動作數(shù)量有限的執(zhí)行設(shè)備等。
(3) 狀態(tài)(State):狀態(tài)主要包括空間機器人載荷分系統(tǒng)的工作模式和對傳感器感知信息的抽象定義等信息。系統(tǒng)運行中狀態(tài)可以由行動或一些突發(fā)事件改變。
1.2 要素關(guān)系
要素關(guān)系對任務(wù)規(guī)劃起到約束和指導作用。
(1) “Action?Resource”關(guān)系:表現(xiàn)了活動對資源產(chǎn)生的影響。空間機器人的活動可能依賴某些特定的資源,活動的執(zhí)行可能消耗一定量的資源。
(2) “Action?State”關(guān)系:表現(xiàn)活動對狀態(tài)的影響,空間機器人的活動可能以某些特定的狀態(tài)為限制條件,活動的執(zhí)行可能改變狀態(tài)的取值。
(3) “Action?Action”關(guān)系:由于主體的增多,各空間機器人操作行為之間可能存在一些無法用上述關(guān)系表示的邏輯關(guān)系,這時,就需要直接定義兩個行為之間的邏輯關(guān)系,主要的“Action?Action”有時序關(guān)系等。
2 空間機器人任務(wù)規(guī)劃模型
基于PDDL的建模規(guī)范,將規(guī)劃問題分為規(guī)劃域和規(guī)劃任務(wù)兩個部分,。其中,。規(guī)劃域體現(xiàn)了規(guī)劃要素及相互關(guān)系,規(guī)劃任務(wù)體現(xiàn)了問題的輸入(初始和目標)和輸出(規(guī)劃結(jié)果)。模型中元素定義為:表示對象空間、表示狀態(tài)空間、表示資源空間、表示活動空間、表示約束空間、表示初始條件、表示任務(wù)目標、表示規(guī)劃結(jié)果。下面對各種元素的定義進行詳細描述。
2.1 對 象
對象(Objcet)包括空間機器人和分系統(tǒng)。,為任務(wù)可調(diào)動空間機器人的總數(shù),其中每個對象包括4個屬性:。屬性中表示空間機器人的惟一身份標識,為空間機器人的名稱,為空間機器人的類型,表示該對象特有的屬性。
2.2 狀 態(tài)
狀態(tài)(State)表示空間機器人各分系統(tǒng)和設(shè)備的工作模式和狀態(tài),操作目標的狀態(tài)等。STRIPS中的狀態(tài)、PDDL中的謂詞都包含了系統(tǒng)的狀態(tài)信息。Domain中為狀態(tài)集合。其中每個資源包含狀態(tài)名稱、默認狀態(tài)值和取值范圍。本文將狀態(tài)定義為多值離散的,例如存儲器的狀態(tài)有記錄、重放、空閑、備份4種離散狀態(tài)。任務(wù)規(guī)劃的核心是與規(guī)劃目標有關(guān)的空間機器人狀態(tài)以及可以改變和維持這些狀態(tài)的空間機器人活動,比如“”,“”可以改變機械臂的狀態(tài)。
2.3 資 源
空間機器人上攜帶的燃料、電源的電量、存儲設(shè)備的存儲空間以及各類設(shè)備、裝置均可以用資源(Resource)的形式進行描述。領(lǐng)域模型中資源包括。下面對資源定義中各屬性進行描述:
(1) :表示資源的代號。
(2) :表示資源的名稱。
(3) :表示資源類型,模型支持兩種類型的資源表示:可恢復資源、不可恢復資源。資源在活動開始時消耗,活動結(jié)束后會釋放掉部分可恢復型資源。有些活動也會增加可恢復型資源(比如下行數(shù)據(jù)可釋放存儲空間),不可恢復資源在消耗后不能恢復(比如燃料、供一次性使用的設(shè)備等)。
(4) :表示資源容量,資源的容量用整數(shù)表示,對于取值可能為連續(xù)的資源,也以離散的整數(shù)表示,即資源的消耗必須為整數(shù)個單位。對于獨占設(shè)備認為其取值范圍為,被占用時為,空閑時為。
2.4 活 動
規(guī)劃域中的活動指的是活動類型(Activitytype),描述的是空間機器人的能力,不包含其執(zhí)行特性。Activitytype是任務(wù)規(guī)劃的核心要素,一個活動類型對應一個或多個控制指令的集合,完成一個具體功能操作,具有可理解的實際意義。Activitytype包含屬性為。Activitytype在PDDL中活動的基礎(chǔ)上增加了表示活動類型的持續(xù)時間。下面詳細描述各屬性的作用:
(1) :屬性保證了Activitytype在規(guī)劃域中的惟一性。任務(wù)規(guī)劃的結(jié)果是給Activitytype賦予了時間屬性的活動實例,一個Activitytype可產(chǎn)生多個活動實例,活動類型和活動實例之間的關(guān)系與面向?qū)ο箢惻c對象之間關(guān)系相似。
(2) :傳統(tǒng)的規(guī)劃模型不具有表示時間的能力,屬性的加入解決了這一問題??臻g機器人執(zhí)行任何一個活動都需要耗費時間??梢允蔷唧w的數(shù)值,也可以用時間函數(shù)表示。
(3) :表示活動執(zhí)行的前提條件,也即活動執(zhí)行的約束條件。表示活動在實例化時必須滿足約束條件,關(guān)于約束的性質(zhì)在后面進行詳細描述。
(4) :表示活動產(chǎn)生的影響,主要包括狀態(tài)變化和資源變化兩種影響。影響的生效時間既可能是活動執(zhí)行前,也可能發(fā)生在活動執(zhí)行后。通過和進行標記。對于資源變化,為避免共享資源帶來的沖突,通常發(fā)生在活動執(zhí)行前??苫謴托唾Y源需要在活動執(zhí)行后或活動執(zhí)行意外終止時釋放所占用的資源。而活動帶來的狀態(tài)改變,通常發(fā)生在活動完成后。例如表示活動結(jié)束后將一個狀態(tài)從轉(zhuǎn)變成,表示活動開始前占用數(shù)量為的資源,表示活動結(jié)束后釋放數(shù)量的,活動對資源產(chǎn)生的影響如圖1所示。
規(guī)劃的過程要把活動類型進行實例化產(chǎn)生活動實例()。一個活動類型可以多次實例化,比如活動類型為,而根據(jù)操作的需要,可以在不同時刻執(zhí)行多次該活動,即生成多個具有不同時間屬性的活動實例?;顒訉嵗杀硎緸?,其中為活動的一個活動實例的開始時間。和共同決定了活動實例的執(zhí)行特征。
2.5 約 束
約束(Constraint)描述了空間機器人的“Action?State”,“Action?Resource”和“Action?Action”三種關(guān)系。STRIPS和PDDL中動作的,體現(xiàn)了約束的性質(zhì)。約束的表現(xiàn)能力,決定了任務(wù)規(guī)劃是否能夠與現(xiàn)實世界很好的銜接。約束主要表現(xiàn)兩種情況:一是活動的可行條件,二是活動的規(guī)律??尚袟l件即活動類型實例化中狀態(tài)的條件限制和資源限制,是活動類型實例化符合現(xiàn)實的必然要求。另外,在執(zhí)行任務(wù)時,有些活動之間存在一定的固定時序關(guān)系,通過約束定義可以大大縮減規(guī)劃空間。
約束關(guān)系可以分為資源約束(Resource Constraint)、狀態(tài)約束(State Constraint)和時間約束(Time Constraint)三類:
(1) 資源約束。資源約束定義了活動類型實例化所需的最小資源余量。資源的時間窗口特點限制了活動實例在時間軸上的部署?;顒訉嵗荒懿渴鹪谫Y源余量滿足資源約束的時間窗口內(nèi),即活動實例的。為一個時間區(qū)間集合,該集合內(nèi)的時間上資源余量滿足活動的要求。
(2) 狀態(tài)約束。狀態(tài)約束描述空間機器人活動類型實例化的狀態(tài)前提?;顒宇愋蛯嵗耸鼙匾馁Y源限制,還應滿足邏輯上的合理性。例如空間機器人執(zhí)行機動活動,除了滿足必要的燃料條件,還應保證基座處于開啟狀態(tài)且基座工作模式處于自由飛行模式。
(3) 時間約束。時間約束描述了活動類型的執(zhí)行時間限制和兩個活動時間屬性之間的關(guān)系。活動類型在實例化時按照時間約束確定其絕對時間屬性(開始時間和結(jié)束時間)。時間約束有相對約束和絕對約束兩類。相對時間約束表示兩個活動類型執(zhí)行時間之間的關(guān)系,最典型的相對時間約束是時序約束,即一個活動只能在另一個活動完成之后開始。絕對時間約束表示活動的時間屬性和某個絕對的時間值之間的關(guān)系。
3 規(guī)劃任務(wù)描述
MSR的系統(tǒng)組成和任務(wù)執(zhí)行環(huán)境特點決定了任務(wù)規(guī)劃的規(guī)劃域,然而由于MSR系統(tǒng)完成任務(wù)的多樣性和重復完成任務(wù)的能力,每個MSR系統(tǒng)可能完成多類任務(wù),或者重復完成多次同類任務(wù)。通過任務(wù)模型可以對任務(wù)進行統(tǒng)一的抽象描述,每次任務(wù)開始后規(guī)劃域是固定不變的(不發(fā)生異常事件的情況下),通過任務(wù)建模定義不同的任務(wù),MSR自主協(xié)同任務(wù)規(guī)劃系統(tǒng)根據(jù)任務(wù)模型引導任務(wù)規(guī)劃的完成。每個任務(wù)獨特的屬性主要有初始條件、目標和規(guī)劃結(jié)果。
(1) 初始條件。初始條件定義了任務(wù)開始前狀態(tài)條件集合和資源條件集合。對規(guī)劃過程起到重要作用,決定了規(guī)劃和協(xié)商的起點?;诓煌某跏紶顟B(tài)和資源條件完成相同目標所需的操作過程是不同的。
(2) 目標。任務(wù)規(guī)劃過程有目標驅(qū)動,規(guī)劃的目標可以表示為。和分別定義了規(guī)劃目標的兩種表現(xiàn)形式,以一組狀態(tài)取值的集合定義目標;以一組活動類型的集合定義目標。
(3) 規(guī)劃結(jié)果。規(guī)劃的結(jié)果是一個可行的行動方案,模型建立時任務(wù)規(guī)劃結(jié)束后為任務(wù)的全局規(guī)劃方案,包含一組活動實例的集合。MSR中每個空間機器人的規(guī)劃方案,其中。該活動實例中每個都滿足其對應的,每個活動實例的執(zhí)行都會產(chǎn)生的影響。系統(tǒng)在的作用下可以完成由到的轉(zhuǎn)變。
4 基于GTL的模型表示
NASA在其多個航天器規(guī)劃系統(tǒng)中采用了通用時間軸(Generalized Timelines,GTL)技術(shù)表示任務(wù)規(guī)劃。本文將規(guī)劃用Timeline的集合來表示,每個Timeline對應航天器的狀態(tài)和資源的記錄或映射值。Timeline能夠直觀地描述任務(wù)規(guī)劃,活動的實例分布于Timeline上,且同一時間同一活動類型僅有一個活動實例。規(guī)劃的結(jié)果也可以用Timeline進行正確性和安全性驗證。時間軸的橫向為時間,記錄了活動、資源和狀態(tài)隨時間變化的動態(tài)性,縱向為狀態(tài)、資源和活動類型。
(1) 狀態(tài)Timeline。狀態(tài)Timeline表現(xiàn)了狀態(tài)隨時間的變化過程,如圖2所示。任務(wù)規(guī)劃結(jié)果的執(zhí)行將導致狀態(tài)變量從初始狀態(tài)到目標狀態(tài)的變化。狀態(tài)的取值可能由活動改變,也可能隨時間發(fā)生變化。
(2) 資源Timeline。資源Timeline表現(xiàn)了資源隨時間變化的過程,如圖3所示。
從圖3中可以看出,不可恢復型資源總是隨時間遞減的(如燃料),可恢復型資源在消耗后有可能得到補充繼續(xù)使用??苫謴托唾Y源有的在占用該資源的活動實例完成后會自動釋放(如功率),有的需要其他具有補充該資源的效果的活動實例執(zhí)行后才可恢復(如存儲)。
(3) 活動Timeline?;顒覶imeline可表示為每個活動類型的活動實例在時間上的分布Gantt圖,如圖4所示。任務(wù)規(guī)劃過程是活動Timeline不斷變化的過程,每個在Timeline中的活動實例都必須與狀態(tài)和資源Timeline相對應,活動Timeline的變化也會導致狀態(tài)和資源時間軸的動態(tài)變化。
5 模型應用實例
以一個想定任務(wù)的任務(wù)規(guī)劃腳本為例說明模型的應用。想定任務(wù)的活動實例如表1所示。表中為每個活動實例對應的活動類型名稱、編碼,活動類型的開始時間和持續(xù)時間。
表1 空間機器人活動實例序列
模型表現(xiàn)方法如圖5所示。圖中用Gantt圖表現(xiàn)了該任務(wù)的Timeline,任務(wù)管理人員可以直觀地在Gantt圖上觀察活動實例的執(zhí)行開始和持續(xù)時間,以及資源和狀態(tài)隨時間的變化情況。
6 結(jié) 語
空間機器人任務(wù)規(guī)劃模型是用建模語言對空間機器人執(zhí)行任務(wù)過程進行語義的描述,從而使計算機能夠很好的理解。本文通過對現(xiàn)有規(guī)劃建模語言的研究分析,以PDDL語言設(shè)計基本原理為基礎(chǔ),拓展了對規(guī)劃過程中資源和活動實例的定義,以及對活動的持續(xù)時間和活動效果屬性。經(jīng)過模型應用實例驗證,本文研究的模型具備描述空間機器人任務(wù)過程的能力。能夠支撐進一步任務(wù)規(guī)劃研究工作。
參考文獻
[1] 饒東寧,蔣志華,姜云飛.規(guī)劃領(lǐng)域定義語言的演進綜述[J].計算機工程與應用,2010,46(22):23?25.
[2] 陳治科,熊偉,劉德生,等.在軌操作技術(shù)及國外發(fā)展分析[J].裝備學院學報,2014,25(6):63?68.
[3] 姜維,龐秀麗.提高衛(wèi)星服務(wù)壽命的任務(wù)規(guī)劃方法研究[J].自動化學報,2014(5):13.
[4] CHIEN S, JOHNSTON M, FRANK J, et al. A generalized timeline representation, services, and interface for automating space mission operations [C]// Proceedings of Space Operations Symposium. Stockholm, Sweden: [s.n.], 2012: 11?17.
[5] STROBEL V, KIRSCH A. Planning in the wild: modeling tools for PDDL [C]// Proceedings of Advances in Artificial Intelligence. Germany: Springer International Publishing, 2015: 273?284.
[6] FIKES R E, NILSSON N J. STRIPS: A new approach to the application of theorem proving to problem solving [J]. Artificial intelligence, 1972, 2(3): 189?208.
[7] KOEHLER J, NEBEL B, HOFFMANN J, et al. Extendingplanning graphs to an ADL subset [J]. Recent advances in AI planning, 1999, 35: 273?285.
[8] LIANG Nannan. A description model of multi?step attack planning domain based on knowledge representation [J]. Acta electronica Sinica, 2013, 22(3): 437?441.