李方正,李陽,易朋興,王浩,黃俊杰
(1.中國人民解放軍92578部隊,北京 100161;2.華中科技大學機械科學與工程學院,湖北 武漢 430074)
艦船裝備維修任務(wù)涉及的維修零件、維修工具、維修對象等維修資源種類繁多且過程復雜,缺少統(tǒng)一的模型表達,國內(nèi)外相關(guān)學者在這方面也做了較多的研究。如Li等[1]為了表示拆卸序列中產(chǎn)品的優(yōu)先順序,采用有向圖的形式進行約束,然后通過改進遺傳算法獲得了拆卸序列,但其約束關(guān)系僅適用于零部件之間,并不包含其他維修資源。也有一些學者采用PERT、Petri網(wǎng)等方法對維修過程建模[2-4],用于實際維修過程分析,將得到的結(jié)果用于指導仿真,這些維修過程建模方式僅在規(guī)劃層進行,并未考慮實際作業(yè)的執(zhí)行。程中華等[5]建立了基于任務(wù)內(nèi)聚系數(shù)的分解模型,逐步將任務(wù)分解為功能、活動,實現(xiàn)對裝備維修保障過程的建模,但此過程并未給出功能、活動等名詞的具體含義。因此,對于艦船裝備虛擬維修過程,如何建立統(tǒng)一的任務(wù)過程模型,通過描述維修任務(wù)單元對維修任務(wù)進行有效分解是有必要的。本文嘗試基于分層任務(wù)網(wǎng)絡(luò)的維修任務(wù)分解思路,將維修任務(wù)分解至元任務(wù)層級,建立維修任務(wù)分解與分層任務(wù)網(wǎng)絡(luò)規(guī)劃之間的映射關(guān)系,通過分層任務(wù)網(wǎng)絡(luò)規(guī)劃匹配使艦船裝備維修任務(wù)分解為有序元任務(wù)序列,便于艦船維修仿真的實現(xiàn)。
裝備維修包含多個過程,進行維修作業(yè)的前提是確定維修過程,即對維修行為和作業(yè)順序進行分析,獲得滿足維修工時、人員和工具設(shè)備需求等一系列約束的可執(zhí)行動作序列??梢钥闯?,裝備維修主要包括維修任務(wù)分解、任務(wù)分配與任務(wù)執(zhí)行等多個環(huán)節(jié)。艦船艙室通道較為狹窄,零部件結(jié)構(gòu)復雜,管路密集且零部件之間干涉性強,維修任務(wù)需要由多個維修人員協(xié)同完成。而不合理的維修任務(wù)分解方式會導致混亂的維修進程,影響維修任務(wù)的執(zhí)行。
因此,本文首先對艦船維修任務(wù)分解過程進行分析。在虛擬維修過程中,維修任務(wù)的分解需要根據(jù)維修操作規(guī)程和維修知識手冊,為不同維修任務(wù)制定不同維修方案,形成相應(yīng)的維修過程模型,來實現(xiàn)維修作業(yè)的仿真與分析。維修過程模型的建立方式有多種,目前較為常用的有Petri網(wǎng)、IDEF3和UML等多種方式[6-8],Petri網(wǎng)是一種通過節(jié)點和有向弧組成的圖形化工具,可以通過嚴格的限定來描述復雜系統(tǒng)匯總沖突、并發(fā)和異步等關(guān)系;IDEF3是通過場景和對象實現(xiàn)對過程進行描述的建模方式;UML采用形式化的建模語言對靜態(tài)結(jié)構(gòu)和動態(tài)行為過程進行表示。
雖然這些建模方式能夠很好地描述維修過程中的行為狀態(tài),但它們都是描述維修對象的變遷過程,并不包含具體人的動作?,F(xiàn)有的仿真軟件還不能支持指定任務(wù)的仿真,無法實現(xiàn)自然語言維修指令到維修過程的轉(zhuǎn)化,如計算機無法識別對緊固件拆卸這一宏觀任務(wù)。如何使用較為簡便的建模方式對維修過程進行統(tǒng)一化描述,并建立與維修仿真之間的聯(lián)系仍然是研究的難點。
本文借鑒分層任務(wù)網(wǎng)絡(luò)(Hierarchical Task Network,HTN)規(guī)劃思想[9],為虛擬維修仿真提出一種基于過程的維修任務(wù)分解思路。HTN規(guī)劃是利用領(lǐng)域知識,遞歸地將復雜的抽象任務(wù)逐層分解,獲得可直接執(zhí)行的規(guī)劃動作,不同的多邊形的邊數(shù)及顏色代表不同復雜程度的任務(wù),其分解過程可形象化表示為圖1。
圖1 復合任務(wù)分解過程
可以看出,HTN規(guī)劃是以規(guī)劃領(lǐng)域知識為基礎(chǔ),對復雜任務(wù)目標集合進行逐層分解的過程,而維修任務(wù)分解是將復雜維修任務(wù)根據(jù)維修經(jīng)驗知識,逐一分解成一系列的可執(zhí)行動作。所以,分層任務(wù)網(wǎng)絡(luò)規(guī)劃方法能夠有效輔助維修人員在維修規(guī)劃過程中,根據(jù)復雜的維修狀態(tài)信息合理地對維修任務(wù)進行分解。HTN規(guī)劃流程如圖2所示。
圖2 HTN規(guī)劃流程
在上述規(guī)劃過程中使用了一些專有名詞,可將整個過程簡要概括為:HTN規(guī)劃是以“方法”為分解途徑,對“任務(wù)網(wǎng)絡(luò)”進行遞歸分解,獲得由有序“原子任務(wù)”組成的“規(guī)劃解”。由于HTN規(guī)劃具有領(lǐng)域無關(guān)性的特點,在根據(jù)HTN對維修任務(wù)進行分解時,需要將任務(wù)分解過程與HTN規(guī)劃中“方法”和“原子任務(wù)”等專有名詞建立聯(lián)系,加入維修領(lǐng)域相關(guān)知識,從而對實際維修任務(wù)進行合理有效分解。
在面向維修仿真的任務(wù)分解中,多數(shù)學者將維修任務(wù)分為維修任務(wù)層、維修事件層、維修作業(yè)層和維修動素層這四個不同層級[10]?,F(xiàn)有任務(wù)分解方式以維修動素作為最終執(zhí)行層,根據(jù)分解結(jié)果控制虛擬環(huán)境中的模型作出相應(yīng)動作來實現(xiàn)維修仿真,而HTN規(guī)劃的目的是為得到一系列可執(zhí)行的操作序列,規(guī)劃出來的解是可直接執(zhí)行的。而在維修作業(yè)中,即便是同類型的零件,維修人員也可能受其尺寸、位置等因素的影響而執(zhí)行不同的維修動素。因此把維修動素作為HTN規(guī)劃中的“原子任務(wù)”來進行分解會產(chǎn)生沖突。
這里借鑒參數(shù)化動作描述可以構(gòu)建仿真過程與自然語言維修指令之間橋梁的思想,將層次結(jié)構(gòu)和分段仿真方式相結(jié)合,建立面向維修的元任務(wù)層次關(guān)系,把維修任務(wù)分解到元任務(wù)層級(圖3)。
圖3 面向維修的元任務(wù)分解層次
結(jié)合維修經(jīng)驗與實際維修案例,把艦船裝備艙室內(nèi)維修活動概括為:對損壞零部件及管路進行拆除或更換、對重要零部件的檢查及保障維修任務(wù)執(zhí)行過程的安全。因此,本文將元任務(wù)設(shè)定為拆卸(disassemble)、裝配(assemble)、搬運(carry)和監(jiān)督(supervise)四種,完成維修任務(wù)的分解。拆卸與裝配是對損壞零部件進行修理的過程,搬運是指維修人員在虛擬場景中對維修工具或零件等物體的移動,監(jiān)督是維修人員對特定維修區(qū)域的管理。用這四類元任務(wù)描述整個維修過程,對任務(wù)進行分解,便于完成虛擬維修仿真。
同時,建立HTN規(guī)劃與維修任務(wù)分解之間的映射關(guān)系,如表1所示。在建立完維修任務(wù)分解與分層任務(wù)網(wǎng)絡(luò)的映射關(guān)系之后,需要對每一項對應(yīng)關(guān)系根據(jù)知識經(jīng)驗進行描述說明。對于可進行分解的復合任務(wù),在給定對應(yīng)的“方法”和“操作符”之后即可生成一組有序元任務(wù)。
表1 HTN規(guī)劃與維修任務(wù)分解映射
這里以艦船某傳動裝置維修為例進行說明,主要維修任務(wù)為更換損壞行星架、封油壓環(huán)和小軸并檢查擋圈,圖4為該裝備的零件拆解圖,共包含24個拆卸單元,其相關(guān)零件名稱及序號如表2所示。
圖4 艦船某傳動裝置零件拆解
表2 艦船某傳動裝置零件拆解信息
根據(jù)HTN規(guī)劃對維修任務(wù)進行分解后可得到該傳動裝置維修元任務(wù)序列如圖5所示。圖5中,元任務(wù)后面的數(shù)字表示該任務(wù)的編號,共有20個元任務(wù),箭頭指向元任務(wù)對應(yīng)的零件,R0表示系統(tǒng)初始的維修狀態(tài)。其中包括有拆卸輸出端軸承體、輸出行星架等7個拆卸任務(wù),搬運備用行星架、備用封油壓環(huán)和備用小軸任務(wù)和10個裝配任務(wù)。由此獲得了執(zhí)行該維修任務(wù)的有序元任務(wù)序列,為下一步任務(wù)分配執(zhí)行提供有效信息。
圖5 艦船某傳動裝置維修元任務(wù)序
本文針對現(xiàn)有維修任務(wù)建模及分解與維修仿真過程無法建立完整約束和聯(lián)系的問題,提出基于分層任務(wù)網(wǎng)絡(luò)規(guī)劃的艦船裝備維修任務(wù)分解方式,結(jié)合艦船艙室維修活動設(shè)定四種元任務(wù)。此種維修任務(wù)分解方式有兩個優(yōu)點:首先,維修任務(wù)分解過程與維修人員對維修任務(wù)執(zhí)行的推理過程相似,且分解過程是根據(jù)實際操作規(guī)程和知識手冊設(shè)定的,符合實際維修任務(wù)流程,便于維修仿真的實現(xiàn)。另外,可以對規(guī)劃領(lǐng)域不斷擴展,面對情況更加復雜的維修場景,建立更加完善的表述機制,來完成特殊任務(wù)類型的分解。