曲 芳, 頓國強(qiáng), 沈 斌, 馮夷寧, 王紹勝
(1.黑龍江科技大學(xué) 工程訓(xùn)練與基礎(chǔ)實(shí)驗(yàn)中心, 哈爾濱 150022; 2.東北農(nóng)業(yè)大學(xué) 工程學(xué)院, 哈爾濱 150030;3.黑龍江科技大學(xué) 安全工程學(xué)院, 哈爾濱 150022; 4.黑龍江科技大學(xué) 現(xiàn)代制造工程中心, 哈爾濱 150022)
?
基于Multi-Agent協(xié)作的井下機(jī)器人智能搜救系統(tǒng)
曲芳1,2,頓國強(qiáng)2,沈斌3,馮夷寧2,王紹勝4
(1.黑龍江科技大學(xué) 工程訓(xùn)練與基礎(chǔ)實(shí)驗(yàn)中心, 哈爾濱 150022; 2.東北農(nóng)業(yè)大學(xué) 工程學(xué)院, 哈爾濱 150030;3.黑龍江科技大學(xué) 安全工程學(xué)院, 哈爾濱 150022; 4.黑龍江科技大學(xué) 現(xiàn)代制造工程中心, 哈爾濱 150022)
煤礦井下救援與逃生是煤礦安全生產(chǎn)中亟待解決的重大課題之一。發(fā)生礦難事故后,第一時(shí)間就是搜索并解救井下被困人員。傳統(tǒng)的救援方式耗費(fèi)大量的人力、物力和財(cái)力,且容易錯(cuò)過井下最佳救援的“黃金72小時(shí)”。通過建立基于Multi-Agent協(xié)作的煤礦井下智能搜救模型,設(shè)計(jì)出兩類Agent模塊,即SearchAgent和ContolAgent。利用Agent的主動(dòng)性、自反應(yīng)、自組織、自學(xué)習(xí)和協(xié)同溝通的特性,在礦難發(fā)生后,根據(jù)井下地圖和多個(gè)SearchAgent反饋回來的路徑信息進(jìn)行匯總、分析與計(jì)算,精確篩選出最優(yōu)、最近的搜救路線,并通知其他SearchAgent協(xié)同援助。應(yīng)用多主體建模技術(shù)模擬井下救援路線,對(duì)于井下被困人員位置的定位、搜救方案的制定、救援人員的調(diào)度安排、物資的合理分配都具有十分重要的現(xiàn)實(shí)意義。
智能搜救; Multi-Agent協(xié)作; SearchAgent; ControlAgent
近年來,黑龍江省煤礦井下瓦斯、煤塵等爆炸事故頻發(fā)[1],造成的人員傷亡數(shù)字觸目驚心,直接帶來的經(jīng)濟(jì)損失達(dá)數(shù)十億元。因此,煤礦井下救援與逃生成為煤礦安全生產(chǎn)中亟待解決的重大課題。發(fā)生礦難事故后,第一時(shí)間就是搜索并解救井下被困人員[2]。發(fā)生事故的現(xiàn)場(chǎng),往往使得井下環(huán)境異常惡劣[3],救援人員無法及時(shí)下井,耽誤了寶貴的救援時(shí)間。一年前,曲芳等[4]利用井下救援機(jī)器人在第一時(shí)間下井,將井下人員傷亡信息準(zhǔn)確及時(shí)地傳輸給地面指揮中心,為事故專家和決策者做出判斷提供依據(jù)。
事實(shí)上,僅憑一臺(tái)救援機(jī)器人獨(dú)立完成井下搜救任務(wù)耗時(shí)巨大,且如遇井下二次塌方或爆炸,還需指揮中心再次派遣其他救援機(jī)器人下井。針對(duì)這一現(xiàn)狀,筆者探究擬派出多個(gè)救援機(jī)器人下井展開搜救工作,且每個(gè)救援機(jī)器人均為一個(gè)Agent智能代理人,這些Agent具有智能性[5]。所謂的Multi-Agent協(xié)作,即通過多個(gè)Agent協(xié)同通信來完成群體搜救任務(wù),且多個(gè)Agent之間的協(xié)作是自治和獨(dú)立的,行為和目標(biāo)不受其他Agent的限制。他們之間通過競(jìng)爭(zhēng)、協(xié)商、協(xié)作的手段共同完成系統(tǒng)設(shè)定的目標(biāo)。擬在發(fā)生事故的井下,通過計(jì)算每個(gè)Agent從井口到被困人員的最短路徑,保障為搜救工作提供最佳、最短、最快的救援路線,輔助救援人員采取緊急決策,實(shí)施快速有效的搜救方案。
1.1機(jī)器人系統(tǒng)模型建立
在井下,每個(gè)救援機(jī)器人都是隨機(jī)的尋找被困人員,并分別計(jì)算出被困人員到井口的距離,從而根據(jù)最小距離來確定最佳路徑。在救援機(jī)器人群體中,設(shè)計(jì)兩類Agent,分別是SearchAgent和ContolAgent。在已經(jīng)成熟的多Agent協(xié)作開發(fā)平臺(tái)JATLite上,構(gòu)造該系統(tǒng)所需要的功能Agent。SearchAgent和ContolAgent再在此平臺(tái)上進(jìn)行二次開發(fā)。
利用JATLite構(gòu)建的Agent本身不含有智能成分,不能完全滿足多個(gè)井下救援機(jī)器人對(duì)Agent的要求。故基于JATLite系統(tǒng),并在擴(kuò)展模板RouterClientAction的基礎(chǔ)上設(shè)計(jì)基類WorkflowAgent,使模板具有信息存儲(chǔ)和處理能力。各個(gè)構(gòu)造的Agent繼承基類WorkflowAgent,加入相應(yīng)的屬性和方法,就可以全面實(shí)現(xiàn)多個(gè)井下救援機(jī)器人的智能搜救功能。工作基類WorkflowAgent繼承模板類RouterClientAction,并引入Activity、WFEvent、Rule和CCapbility等基本bean類來描述內(nèi)部特殊結(jié)構(gòu)。
其中:Activity類支持WorkflowAgent 對(duì)工作中活動(dòng)信息的維護(hù)。WFEvent類定義系統(tǒng)中的各種事件,如狀態(tài)變化事件、數(shù)據(jù)事件和失敗事件等,它是觸發(fā)Agent實(shí)施自主行為的一個(gè)主要因素。Rule類支持定義WorkflowAgent 的規(guī)劃,描述執(zhí)行某個(gè)動(dòng)作的時(shí)機(jī)。Capbility類用來描述WorkflowAgent所具備的能力。
工作基類WorkflowAgent結(jié)構(gòu)如圖1所示。
圖1 工作基類WorkflowAgent
在工作基類WorkflowAgent基礎(chǔ)上進(jìn)行繼承,從而實(shí)現(xiàn)SearchAgent和ContolAgent的功能。其中,Search-Agent的功能是從井口開始尋找被困井下人員所在位置,并跟蹤釋放信號(hào),再將信息返回給ContolAgent,SearchAgent結(jié)構(gòu)如圖2所示。
圖2 SearchAgent結(jié)構(gòu)
其中:SearchAgent.RecordPath(double A)是記錄下井口到被困人員的距離。SearchAgent.Position (double b,double c,double d)是標(biāo)記被困人員位置坐標(biāo)。
ContolAgent的功能是從不同的SearchAgent中獲取到不同目標(biāo)物的方位坐標(biāo),記錄其路徑距離再存入數(shù)據(jù)庫中,計(jì)算出的最短路徑設(shè)為最佳路徑。 ContolAgent的結(jié)構(gòu)如圖3所示。
圖3 ContolAgent結(jié)構(gòu)
其中:ContolAgent.GetRecordPath(double A)是獲得井下被困人員距離井口的距離。ContolAgent.GetPosition (double b,double c,double d)是獲得被困人員的位置坐標(biāo)。ContolAgent.Save(double A,double b,double c,double d)是保存被困人員位置坐標(biāo)和距離到數(shù)據(jù)庫中。ContolAgent.Calculation(double A,double b,double c,double d)是計(jì)算出哪一個(gè)Agent的返回?cái)?shù)據(jù)為最短的距離。
1.2機(jī)器人運(yùn)行算法設(shè)計(jì)
基于Multi-Agent協(xié)作的井下救援機(jī)器人群體智能搜救的運(yùn)行算法設(shè)計(jì)可以按照流程進(jìn)行,如圖4所示。設(shè)計(jì)的多Agent協(xié)作群體智能算法,借鑒螞蟻群體覓食尋求最優(yōu)路徑的思想,根據(jù)救援機(jī)器人發(fā)現(xiàn)井下被困人員到井口距離最短為最佳搜救路線。設(shè)計(jì)兩類智能機(jī)器人軟件結(jié)構(gòu),即SearchAgent和ControlAgent。再在成熟的JATLite系統(tǒng)上對(duì)SearchAgent和ControlAgent進(jìn)行二次開發(fā),使這兩種軟件結(jié)構(gòu)協(xié)同合作,并開展井下通信,以保證多個(gè)救援機(jī)器人群體合作完成井下搜救任務(wù)。
圖4 井下救援機(jī)器人運(yùn)行算法流程
Fig. 4Running algorithm flowchart of underground rescue robot
1.3多Agent協(xié)同通信
多個(gè)Agent之間的協(xié)同通信需要三個(gè)基本部分的支持,即共同的語言、對(duì)于所交換的知識(shí)的共同理解以及進(jìn)行語言和知識(shí)交換的能力。能夠?qū)崿F(xiàn)Agent之間合作交流的基礎(chǔ),是需要保證Agent在進(jìn)行通信時(shí)可以屏蔽掉其內(nèi)部的實(shí)現(xiàn)細(xì)節(jié)。它們之間需要的,是一種獨(dú)立于領(lǐng)域知識(shí)的、高層的、能夠直接互相影響其行為的Agent通信語言(ACL: Agent Communication Language)。
Agent的ACL通信語言,應(yīng)具有普遍性、簡捷一致的語法和語義、通信內(nèi)容的獨(dú)立性等特點(diǎn)。目前,常用的ACL有KQML[6](Knowledge Query and Manipulation Language)和FIPA[7](Foundation of Intelligent Physical Agent)ACL,文中所涉及的設(shè)計(jì)系統(tǒng),采用的通信語言是KQML。KQML由美國國防部先進(jìn)研究計(jì)劃局(AR隊(duì))的知識(shí)共享計(jì)劃提出。KQML語言定義了一種Agent直接傳遞消息的標(biāo)準(zhǔn)語法以及一些動(dòng)作表達(dá)式。這些動(dòng)作主要從語言行為(speech act)理論中演化而來。
KQML由內(nèi)容層、通訊層和消息層組成。內(nèi)容層負(fù)責(zé)實(shí)際消息的內(nèi)容組織,具體的組織方式遵循Agent內(nèi)部的知識(shí)表達(dá)。通訊層負(fù)責(zé)對(duì)消息的某些特性進(jìn)行編碼,這些特性主要是描述底層特征的參數(shù)。消息層負(fù)責(zé)對(duì)所傳遞消息進(jìn)行編碼,是KQML語言的核心。消息層的主要功能是標(biāo)志消息發(fā)送所使用的協(xié)議,并且由它決定Agent的交互方式。KQML中定義了一組含義明確的、預(yù)留的行為原語。這些預(yù)留的行為原語并非是KQML具體實(shí)現(xiàn)中必須實(shí)現(xiàn)的最小子集,可以根據(jù)需要選擇實(shí)現(xiàn)或添加新的原語。
JATLite平臺(tái)是斯坦福大學(xué)編寫的一個(gè)構(gòu)建Agent系統(tǒng)的模板。它提供了可擴(kuò)展的多層結(jié)構(gòu),使得開發(fā)者能在不同的層次上重新構(gòu)成符合需求的Agent模型。JATLite系統(tǒng)使用Agent通信語言,KQML作為底層的通信語言。它提供了一個(gè)Agent消息路由器來保證Agent間消息的傳遞,只需知道Agent的名稱即可,對(duì)于處理Agent地址(如移動(dòng)Agent)發(fā)生變化的情況便可以實(shí)現(xiàn)。
仿真模型是在JATLite系統(tǒng)上對(duì)SearchAgent和ControlAgent進(jìn)行二次開發(fā),利用基于JAVA語言的Eclipse開發(fā)平臺(tái),采用JAVABEAN技術(shù)開發(fā)出基于多Agent的工作平臺(tái)。在JATLite所提供的類庫資源的基礎(chǔ)上,開發(fā)SearchAgent和ControlAgent模塊,并將模型中需要的地圖、Agent的種類、屬性及模型運(yùn)行規(guī)則等都集中在這個(gè)類包中。
系統(tǒng)仿真界面開發(fā)工作流程:首先,將煤礦井下地圖以XML形式的文件加以保存[8],在各個(gè)SearchAgent開始啟動(dòng)工作后,XML形式的文件被導(dǎo)入到每個(gè)SearchAgent。然后,每個(gè)SearchAgent對(duì)地圖文件進(jìn)行解析,待SearchAgent解析完成后,根據(jù)地圖上顯示的路徑,隨機(jī)選擇一條路徑進(jìn)行搜索。
此時(shí),ControlAgent隨時(shí)監(jiān)測(cè)SearchAgent的運(yùn)行狀況。如果SearchAgent發(fā)現(xiàn)目標(biāo)則進(jìn)入鎖定狀態(tài),并發(fā)送信息至ControlAgent。ControlAgent根據(jù)多個(gè)SearchAgent反饋回來的信息進(jìn)行匯總、分析和計(jì)算,精確篩選出最優(yōu)、最近的搜救路線,并通知其他SearchAgent進(jìn)行協(xié)同援助。同時(shí),Agent搜救系統(tǒng)利用自身攜帶的通訊功能向地面指揮中心發(fā)送井下救援信息,指導(dǎo)救援人員作出快速反應(yīng)和決策。SearchAgent模塊的運(yùn)行如圖5所示,ControlAgent模塊運(yùn)行如圖6所示。
圖5 SearchAgent運(yùn)行界面
這一界面實(shí)現(xiàn)了引擎中各Agent類設(shè)計(jì),給出SearchAgent和ControlAgent模塊解析方法和井下協(xié)同搜救任務(wù)安排、分配和管理的相關(guān)設(shè)計(jì)。在仿真系統(tǒng)運(yùn)行過程中,實(shí)現(xiàn)了對(duì)搜救路徑的嚴(yán)格、實(shí)時(shí)監(jiān)測(cè)。同時(shí),仿真系統(tǒng)可以顯示每一次有活動(dòng)行為的Agent狀態(tài),可以對(duì)每個(gè)Agent的活動(dòng)進(jìn)行記錄、監(jiān)測(cè)與分析[6]。這對(duì)于井下被困人員位置定位[8]、搜救方案制定、救援人員調(diào)度安排、物資合理分配都具有重要的現(xiàn)實(shí)意義[9-14]。
井下搜救工程是一個(gè)復(fù)雜的綜合系統(tǒng)。為了更好地開展對(duì)井下最優(yōu)搜救路線的研究,建立基于Multi-Agent協(xié)作的井下智能搜救模型,創(chuàng)新設(shè)計(jì)兩類Agent模塊,即SearchAgent和ContolAgent。利用Agent的主動(dòng)性、自反應(yīng)、自組織、自學(xué)習(xí)和協(xié)同溝通的特性改良井下搜救費(fèi)時(shí)、費(fèi)力的缺點(diǎn),在礦難發(fā)生后,可以根據(jù)井下地圖和多個(gè)SearchAgent反饋回來的路徑信息,進(jìn)行匯總分析計(jì)算,篩選出最優(yōu)、最近的搜救路線,并通知其他SearchAgent協(xié)同援助。同時(shí),搜救系統(tǒng)將井下信息及時(shí)反饋到救援指揮中心,輔助救援人員直接到達(dá)目的地進(jìn)行快速營救,提高井下救援的運(yùn)行效率,為救援工作提供通信平臺(tái),為礦難救援與逃生提供了有效的決策與支持。該項(xiàng)研究具有一定使用價(jià)值和廣闊的應(yīng)用前景。
[1]曲芳, 張艷, 寧姍, 等. 纖維增強(qiáng)復(fù)合材料在探測(cè)機(jī)器人主車體上的應(yīng)用[J]. 機(jī)械制造, 2015(1): 33-35.
[2]QU FANG, CHEN GUOHUI, NING SHAN, et al. Simulation analysis for the walking mechanism of the underground exploration
robot based on MATLAB and ADAMS[J]. Applied Mechanics and Materials, 2014(12): 705-708.
[3]曲芳, 孟慶強(qiáng). 基于人機(jī)工程學(xué)的采煤機(jī)械設(shè)計(jì)研究[J]. 機(jī)械制造, 2013, 53(1): 30-32.
[4]曲芳, 張艷, 寧姍, 等. 基于ADAMS的可變履帶式井下探測(cè)機(jī)器人研究[J]. 工業(yè)儀表與自動(dòng)化裝置, 2014(12): 115-120.
[5]郝帥. 基于多Agent工作流引擎的研究[D]. 長春: 長春工業(yè)大學(xué), 2009: 20-45.
[6]李鑫, 李仲學(xué), 李翠平, 等. 基于Agent 技術(shù)的井下運(yùn)輸仿真模型研究[J]. 金屬礦山, 2011(12): 113-126.
[7]翟蕾, 邵廣賢, 唐超禮, 等. 基于移動(dòng)Agent的井下人員定位系統(tǒng)研究與實(shí)現(xiàn)[J]. 煤炭工程, 2014(10): 223-225.
[8]常松麗. 基于Multi-Agent的井下礦工信息交互模型研究[D]. 太原: 太原科技大學(xué), 2014: 37-38.
[9]曲芳, 寧姍, 張艷, 等. 基于ANSYS的輕型礦車車箱優(yōu)化設(shè)計(jì)[J]. 工業(yè)儀表與自動(dòng)化裝置, 2014(3): 19-22.
[10]曲芳, 明向蘭. 基于回歸分析法的黑龍江省人口預(yù)測(cè)及應(yīng)用[J]. 工業(yè)儀表與自動(dòng)化裝置, 2015(3): 66-68.
[11]曲芳, 馬曉梅, 梁志強(qiáng), 等. 機(jī)器人實(shí)踐教學(xué)研究初探[J]. 機(jī)械職業(yè)教育, 2014(2): 31-33.
[12]曲芳, 郝帥, 張蕊, 等. 一種礦車車箱的多種輕質(zhì)設(shè)計(jì)比較[J]. 機(jī)械工程師, 2014(2): 88-90.
[13]曲芳, 李巍. 基于ANSYS的土壤分層取樣裝置優(yōu)化設(shè)計(jì)研究[J]. 機(jī)械工程師, 2015(8): 10-12.
[14]沈斌, 秦憲禮, 王洪粱, 等. 礦井通風(fēng)系統(tǒng)優(yōu)化改造案例編制及其教學(xué)實(shí)踐[J]. 價(jià)值工程, 2012(10): 284-285.
(編輯徐巖)
Intelligent search and rescue system of underground robot based on Multi-Agent cooperation
QUFang1,2,DUNGuoqiang2,SHENBin3,FENGYining2,WANGShaosheng4
(1.Center for Engineering Training & Basic Experimentation, Heilongjiang University of Science & Technology, Harbin 150022, China; 2. School of Engineering, Northeast Agricultural University, Harbin 150030, China; 3.School of Safety Engineering, Heilongjiang University of Science & Technology, Harbin 150022, China; 4.Modern Manufacture Engineering Center, Heilongjiang University of Science & Technology, Harbin 150022, China)
This paper is devoted to a novel study growing out of a deeper understanding that mine escape and rescue operation represents one of the major issues demanding immediate solution in the safety production of coal mine. The paper features a novel intelligent search and rescue system as an alternative to currently-used rescue way identified as a waste a lot of manpower, material and financial resources and more likely to miss “golden 72 hours”, the best time of underground rescue, suggesting a negative effect on devoting the first time to search and rescue personnel trapped underground after mine accidents. The study consists of developing the intelligent search and rescue model tailored for coal mines based on Multi-Agent cooperation; designing two kinds of Agent modules, namely SearchAgent and ContolAgent; using the Agent's advantages such as initiative, self-reaction, self-organization, self-learning and collaborative communication and thereby summarizing, analyzing and calculating the path information depending on mine maps and multiple SearchAgent feedback; and selecting the best and the nearest search and rescue routes and informing other SearchAgent of cooperative rescue operation after the mine accident. This system, capable of simulating the underground rescue route using Multi-Agent modeling technology, is of important practical significance for the location of trapped personnel, the development of the rescue plan, the arrangement of the rescue workers, and the reasonable distribution of the material.
intelligent rescue; Multi-Agent cooperation; SearchAgent; ControlAgent
2015-07-08
黑龍江省教育廳科學(xué)技術(shù)研究項(xiàng)目(12541710;12533057);黑龍江省青年科學(xué)基金項(xiàng)目(QC2012C102)
曲芳(1983-),女,山東省蓬萊人,講師,博士研究生,研究方向:機(jī)械設(shè)計(jì)及理論、焊接自動(dòng)化理論、農(nóng)業(yè)機(jī)械化工程,E-mail:qufangnihao@163.com。
10.3969/j.issn.2095-7262.2015.04.017
TD77; TP242.6
2095-7262(2015)04-0440-05
A