閻慧+吳止鍰+高永明+馬凱航



摘 要: 任務規劃技術是空間機器人實現自主在軌操控的核心,要進行規劃問題的求解,必須要將實際的規劃問題變為計算機可理解語義的數據模型。雖然目前在人工智能規劃領域有多個成熟模型,且描述能力已經較為完備,但是由于空間機器人在軌工作的特殊性,還沒有一種規劃模型可以直接應用。根據空間機器人任務規劃的要素和關系特性,在規劃領域定義語言(PDDL)的基礎上拓展了對資源和活動實例的定義,活動的持續時間和活動效果屬性,提高了描述的準確性。
關鍵詞: 空間機器人; 任務規劃; 自主在軌操控; 成熟模型
中圖分類號: 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 引 言
空間機器人任務規劃在任務確立到最終執行過程中起到重要的作用。任務規劃過程是由空間機器人的狀態和規劃目標確定的規劃問題作為輸入,經過一定的決策方式(自主或非自主)得到規劃結果。規劃的結果是空間機器人執行的行動序列集合,空間機器人按照這個序列執行行動能夠達到任務的規劃目標。在解決規劃問題之前,必須要對其進行合理的形式化描述。任務規劃模型的意義在于將規劃問題轉化為計算機可理解語義的數據。目前常用的規劃模型有STRIPS,ADL,PDDL,NDDL等。
STRIPS是經典的規劃建模語言,也是其他規劃建模語言的原始模型。ADL在STRIPS的基礎上進行了擴展:狀態中引入了“”符號、開放世界假設、目標中具有量化變量、目標允許析取式、變量可以有類型、允許條件效果、增加了等式謂詞。通過這些擴展豐富了表述能力,使之更接近實際問題。PDDL是國際智能規劃競賽(IPC)的比賽語言,具有較完備的建模能力,將規劃問題描述為對象、謂詞、初始狀態、目標說明和活動的集合。PDDL至今已經發展到3.1版本,其表達能力也不斷提升。許多領域中實際應用的規劃模型在PDDL的基礎上進行擴展產生,如NASA把在PDDL的基礎上擴展研究的NDDL作為其EUROPA框架的輸入語言。
1 規劃要素和關系
任務規劃由空間機器人任務目標驅動,任務目標通常用目標狀態、目標活動、任務周期等描述和限定規劃過程和結果的相關信息。空間機器人的規劃結果是一個選擇的行動集合,每個行動代表空間機器人的一個工作事件,行動有時間、資源等信息,每個選擇的行動都要滿足關系限制。
1.1 規劃要素
(1) 行動(Action):行動由組成空間機器人載荷和操作能力決定,決定了系統的任務能力,例如規劃目標為,則系統必須具有能夠將狀態變為的Action。
(2) 資源(Resource):空間操作過程對資源的消耗非常敏感。空間機器人的資源除燃料、電能等傳統意義上的資源外,還包括并發執行動作數量有限的執行設備等。
(3) 狀態(State):狀態主要包括空間機器人載荷分系統的工作模式和對傳感器感知信息的抽象定義等信息。系統運行中狀態可以由行動或一些突發事件改變。
1.2 要素關系
要素關系對任務規劃起到約束和指導作用。
(1) “Action?Resource”關系:表現了活動對資源產生的影響。空間機器人的活動可能依賴某些特定的資源,活動的執行可能消耗一定量的資源。
(2) “Action?State”關系:表現活動對狀態的影響,空間機器人的活動可能以某些特定的狀態為限制條件,活動的執行可能改變狀態的取值。
(3) “Action?Action”關系:由于主體的增多,各空間機器人操作行為之間可能存在一些無法用上述關系表示的邏輯關系,這時,就需要直接定義兩個行為之間的邏輯關系,主要的“Action?Action”有時序關系等。
2 空間機器人任務規劃模型
基于PDDL的建模規范,將規劃問題分為規劃域和規劃任務兩個部分,。其中,。規劃域體現了規劃要素及相互關系,規劃任務體現了問題的輸入(初始和目標)和輸出(規劃結果)。模型中元素定義為:表示對象空間、表示狀態空間、表示資源空間、表示活動空間、表示約束空間、表示初始條件、表示任務目標、表示規劃結果。下面對各種元素的定義進行詳細描述。
2.1 對 象
對象(Objcet)包括空間機器人和分系統。,為任務可調動空間機器人的總數,其中每個對象包括4個屬性:。屬性中表示空間機器人的惟一身份標識,為空間機器人的名稱,為空間機器人的類型,表示該對象特有的屬性。
2.2 狀 態
狀態(State)表示空間機器人各分系統和設備的工作模式和狀態,操作目標的狀態等。STRIPS中的狀態、PDDL中的謂詞都包含了系統的狀態信息。Domain中為狀態集合。其中每個資源包含狀態名稱、默認狀態值和取值范圍。本文將狀態定義為多值離散的,例如存儲器的狀態有記錄、重放、空閑、備份4種離散狀態。任務規劃的核心是與規劃目標有關的空間機器人狀態以及可以改變和維持這些狀態的空間機器人活動,比如“”,“”可以改變機械臂的狀態。
2.3 資 源
空間機器人上攜帶的燃料、電源的電量、存儲設備的存儲空間以及各類設備、裝置均可以用資源(Resource)的形式進行描述。領域模型中資源包括。下面對資源定義中各屬性進行描述:
(1) :表示資源的代號。
(2) :表示資源的名稱。
(3) :表示資源類型,模型支持兩種類型的資源表示:可恢復資源、不可恢復資源。資源在活動開始時消耗,活動結束后會釋放掉部分可恢復型資源。有些活動也會增加可恢復型資源(比如下行數據可釋放存儲空間),不可恢復資源在消耗后不能恢復(比如燃料、供一次性使用的設備等)。
(4) :表示資源容量,資源的容量用整數表示,對于取值可能為連續的資源,也以離散的整數表示,即資源的消耗必須為整數個單位。對于獨占設備認為其取值范圍為,被占用時為,空閑時為。
2.4 活 動
規劃域中的活動指的是活動類型(Activitytype),描述的是空間機器人的能力,不包含其執行特性。Activitytype是任務規劃的核心要素,一個活動類型對應一個或多個控制指令的集合,完成一個具體功能操作,具有可理解的實際意義。Activitytype包含屬性為。Activitytype在PDDL中活動的基礎上增加了表示活動類型的持續時間。下面詳細描述各屬性的作用:
(1) :屬性保證了Activitytype在規劃域中的惟一性。任務規劃的結果是給Activitytype賦予了時間屬性的活動實例,一個Activitytype可產生多個活動實例,活動類型和活動實例之間的關系與面向對象類與對象之間關系相似。
(2) :傳統的規劃模型不具有表示時間的能力,屬性的加入解決了這一問題。空間機器人執行任何一個活動都需要耗費時間。可以是具體的數值,也可以用時間函數表示。
(3) :表示活動執行的前提條件,也即活動執行的約束條件。表示活動在實例化時必須滿足約束條件,關于約束的性質在后面進行詳細描述。
(4) :表示活動產生的影響,主要包括狀態變化和資源變化兩種影響。影響的生效時間既可能是活動執行前,也可能發生在活動執行后。通過和進行標記。對于資源變化,為避免共享資源帶來的沖突,通常發生在活動執行前。可恢復型資源需要在活動執行后或活動執行意外終止時釋放所占用的資源。而活動帶來的狀態改變,通常發生在活動完成后。例如表示活動結束后將一個狀態從轉變成,表示活動開始前占用數量為的資源,表示活動結束后釋放數量的,活動對資源產生的影響如圖1所示。
規劃的過程要把活動類型進行實例化產生活動實例()。一個活動類型可以多次實例化,比如活動類型為,而根據操作的需要,可以在不同時刻執行多次該活動,即生成多個具有不同時間屬性的活動實例。活動實例可表示為,其中為活動的一個活動實例的開始時間。和共同決定了活動實例的執行特征。
2.5 約 束
約束(Constraint)描述了空間機器人的“Action?State”,“Action?Resource”和“Action?Action”三種關系。STRIPS和PDDL中動作的,體現了約束的性質。約束的表現能力,決定了任務規劃是否能夠與現實世界很好的銜接。約束主要表現兩種情況:一是活動的可行條件,二是活動的規律。可行條件即活動類型實例化中狀態的條件限制和資源限制,是活動類型實例化符合現實的必然要求。另外,在執行任務時,有些活動之間存在一定的固定時序關系,通過約束定義可以大大縮減規劃空間。
約束關系可以分為資源約束(Resource Constraint)、狀態約束(State Constraint)和時間約束(Time Constraint)三類:
(1) 資源約束。資源約束定義了活動類型實例化所需的最小資源余量。資源的時間窗口特點限制了活動實例在時間軸上的部署。活動實例只能部署在資源余量滿足資源約束的時間窗口內,即活動實例的。為一個時間區間集合,該集合內的時間上資源余量滿足活動的要求。
(2) 狀態約束。狀態約束描述空間機器人活動類型實例化的狀態前提。活動類型實例化除了受必要的資源限制,還應滿足邏輯上的合理性。例如空間機器人執行機動活動,除了滿足必要的燃料條件,還應保證基座處于開啟狀態且基座工作模式處于自由飛行模式。
(3) 時間約束。時間約束描述了活動類型的執行時間限制和兩個活動時間屬性之間的關系。活動類型在實例化時按照時間約束確定其絕對時間屬性(開始時間和結束時間)。時間約束有相對約束和絕對約束兩類。相對時間約束表示兩個活動類型執行時間之間的關系,最典型的相對時間約束是時序約束,即一個活動只能在另一個活動完成之后開始。絕對時間約束表示活動的時間屬性和某個絕對的時間值之間的關系。
3 規劃任務描述
MSR的系統組成和任務執行環境特點決定了任務規劃的規劃域,然而由于MSR系統完成任務的多樣性和重復完成任務的能力,每個MSR系統可能完成多類任務,或者重復完成多次同類任務。通過任務模型可以對任務進行統一的抽象描述,每次任務開始后規劃域是固定不變的(不發生異常事件的情況下),通過任務建模定義不同的任務,MSR自主協同任務規劃系統根據任務模型引導任務規劃的完成。每個任務獨特的屬性主要有初始條件、目標和規劃結果。
(1) 初始條件。初始條件定義了任務開始前狀態條件集合和資源條件集合。對規劃過程起到重要作用,決定了規劃和協商的起點。基于不同的初始狀態和資源條件完成相同目標所需的操作過程是不同的。
(2) 目標。任務規劃過程有目標驅動,規劃的目標可以表示為。和分別定義了規劃目標的兩種表現形式,以一組狀態取值的集合定義目標;以一組活動類型的集合定義目標。
(3) 規劃結果。規劃的結果是一個可行的行動方案,模型建立時任務規劃結束后為任務的全局規劃方案,包含一組活動實例的集合。MSR中每個空間機器人的規劃方案,其中。該活動實例中每個都滿足其對應的,每個活動實例的執行都會產生的影響。系統在的作用下可以完成由到的轉變。
4 基于GTL的模型表示
NASA在其多個航天器規劃系統中采用了通用時間軸(Generalized Timelines,GTL)技術表示任務規劃。本文將規劃用Timeline的集合來表示,每個Timeline對應航天器的狀態和資源的記錄或映射值。Timeline能夠直觀地描述任務規劃,活動的實例分布于Timeline上,且同一時間同一活動類型僅有一個活動實例。規劃的結果也可以用Timeline進行正確性和安全性驗證。時間軸的橫向為時間,記錄了活動、資源和狀態隨時間變化的動態性,縱向為狀態、資源和活動類型。
(1) 狀態Timeline。狀態Timeline表現了狀態隨時間的變化過程,如圖2所示。任務規劃結果的執行將導致狀態變量從初始狀態到目標狀態的變化。狀態的取值可能由活動改變,也可能隨時間發生變化。
(2) 資源Timeline。資源Timeline表現了資源隨時間變化的過程,如圖3所示。
從圖3中可以看出,不可恢復型資源總是隨時間遞減的(如燃料),可恢復型資源在消耗后有可能得到補充繼續使用。可恢復型資源有的在占用該資源的活動實例完成后會自動釋放(如功率),有的需要其他具有補充該資源的效果的活動實例執行后才可恢復(如存儲)。
(3) 活動Timeline。活動Timeline可表示為每個活動類型的活動實例在時間上的分布Gantt圖,如圖4所示。任務規劃過程是活動Timeline不斷變化的過程,每個在Timeline中的活動實例都必須與狀態和資源Timeline相對應,活動Timeline的變化也會導致狀態和資源時間軸的動態變化。
5 模型應用實例
以一個想定任務的任務規劃腳本為例說明模型的應用。想定任務的活動實例如表1所示。表中為每個活動實例對應的活動類型名稱、編碼,活動類型的開始時間和持續時間。
表1 空間機器人活動實例序列
模型表現方法如圖5所示。圖中用Gantt圖表現了該任務的Timeline,任務管理人員可以直觀地在Gantt圖上觀察活動實例的執行開始和持續時間,以及資源和狀態隨時間的變化情況。
6 結 語
空間機器人任務規劃模型是用建模語言對空間機器人執行任務過程進行語義的描述,從而使計算機能夠很好的理解。本文通過對現有規劃建模語言的研究分析,以PDDL語言設計基本原理為基礎,拓展了對規劃過程中資源和活動實例的定義,以及對活動的持續時間和活動效果屬性。經過模型應用實例驗證,本文研究的模型具備描述空間機器人任務過程的能力。能夠支撐進一步任務規劃研究工作。
參考文獻
[1] 饒東寧,蔣志華,姜云飛.規劃領域定義語言的演進綜述[J].計算機工程與應用,2010,46(22):23?25.
[2] 陳治科,熊偉,劉德生,等.在軌操作技術及國外發展分析[J].裝備學院學報,2014,25(6):63?68.
[3] 姜維,龐秀麗.提高衛星服務壽命的任務規劃方法研究[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.