潘俊峰,唐敦兵,張澤群,伍健民,馮俊
(南京航空航天大學(xué) 機(jī)電學(xué)院,江蘇 南京 210016)
隨著制造業(yè)走向社會(huì)化和個(gè)性化,客戶的個(gè)性化需求不斷增長(zhǎng)。對(duì)于企業(yè)而言,訂單變得數(shù)量不確定、時(shí)間不確定、優(yōu)先級(jí)也不確定。離散制造車間(discrete manufacturing workshop, DMW)作為制造系統(tǒng)中的加工處理環(huán)節(jié),有望更加靈活、快速地適應(yīng)環(huán)境變化,并根據(jù)資源條件動(dòng)態(tài)處理生產(chǎn)任務(wù)[1]。
為了充分發(fā)揮DMW的優(yōu)勢(shì),有研究學(xué)者提出了多Agent制造系統(tǒng)(multi-Agent manufacturing system, MAMS)。它將車間里的物理設(shè)備與功能抽象成可以獨(dú)立決策的實(shí)體,這種設(shè)計(jì)方式讓多個(gè)決策實(shí)體共同應(yīng)對(duì)和解決問(wèn)題,減少了請(qǐng)求上層控制決策的等待時(shí)間。
在MAMS領(lǐng)域,KOUIDER A等[2]提出了一種基于協(xié)作方法的分布式多Agent調(diào)度系統(tǒng)。KROTHAPALLI N K C等[3]將車間實(shí)體抽象成兩種典型的Agent,即設(shè)備智能體(machine agent, MA)和工件智能體(part agent, PA)。在后續(xù)的研究中,研究者們通常使用這兩類典型Agent。為了提高系統(tǒng)的整體性能,研究人員進(jìn)一步提出了各類功能Agent,包括監(jiān)控智能體(supervisor agent,SA)和數(shù)據(jù)庫(kù)智能體(database agent,DA)等[4]。但是,在MAMS研究中,絕大多數(shù)的研究均是使用軟件仿真,鮮有提及將Agent與實(shí)際設(shè)備的集成。
盡管MAMS可以穩(wěn)定運(yùn)行,但整體運(yùn)行結(jié)果通常不是全局最優(yōu)的。在分層/集中式控制系統(tǒng)中,Agent可以基于當(dāng)前狀態(tài)和知識(shí)做出快速響應(yīng)決策,但是很難實(shí)現(xiàn)全局推論,進(jìn)而選取最佳策略。因此,多層混合控制架構(gòu)和SA被廣泛地應(yīng)用以確保MAMS的整體性能。例如文獻(xiàn)[4]中的實(shí)例,在SA和系統(tǒng)底層Agent(如MA、PA)之間建立了嚴(yán)格但可調(diào)整的層次架構(gòu),SA有權(quán)禁止或者更改下層Agent的決策結(jié)果。
隨著個(gè)性化定制的流行,訂單的不規(guī)則性變得越來(lái)越強(qiáng)。在設(shè)計(jì)MAMS的整體性能保證系統(tǒng)時(shí),需要考慮如何在不影響MAMS的重要功能(例如反應(yīng)性、魯棒性和自治性)的情況下實(shí)現(xiàn)這一目標(biāo)。
針對(duì)這一問(wèn)題,本文進(jìn)行了兩項(xiàng)研究。一方面,構(gòu)建了易于部署的MAMS體系結(jié)構(gòu),可以在不同的DWM中重新實(shí)現(xiàn)。另一方面,本文提出了以自組織規(guī)則中決策參數(shù)的系數(shù)作為調(diào)整目標(biāo)來(lái)保障全局性能的方法。在決策過(guò)程中,指導(dǎo)分層控制架構(gòu)中的Agent做出有利于全局性能的決策。在本文中,簡(jiǎn)要敘述第一部分工作,著重于第二部分的研究。
首先將車間中的設(shè)備按照特定功能進(jìn)行分割組合,形成功能單元(functional unit, FU),F(xiàn)U是構(gòu)成DWM的基本組件。圖1顯示了位于DMW實(shí)驗(yàn)室的銑削FU。該銑削FU主要由CNC銑床及其對(duì)應(yīng)的工位臺(tái)、RFID讀/寫(xiě)設(shè)備和各類傳感器構(gòu)成。在分布式人工智能的啟發(fā)下,設(shè)計(jì)并提出了智能體計(jì)算節(jié)點(diǎn)(agent computing node, ACN)的概念[7]。本文基于JADE(java agent development)框架,設(shè)計(jì)開(kāi)發(fā)了整體系統(tǒng),搭載于ACN上,并通過(guò)物理連接與FU建立聯(lián)系。
圖1 銑削FU示例
ACN的物理硬件載體可以是車間服務(wù)器或嵌入式工控機(jī)。在開(kāi)發(fā)階段,將單個(gè)ACN程序植入到小型嵌入式計(jì)算機(jī)中,該程序可以智能地控制單個(gè)FU。ACN軟件由硬件適配層、智能分析層和基于JADE的信息交互層三層組成。
1) 硬件適配層用于與機(jī)器互連,鏈接庫(kù)根據(jù)不同設(shè)備的通信協(xié)議提供功能支持,硬件適配層用于完成設(shè)備的動(dòng)作控制和信息采集。
2) 智能分析層是基于邊緣計(jì)算思想構(gòu)建智能體的核心部分,此處收集了來(lái)自FU和車間環(huán)境的信息,Agent線程模塊通過(guò)這些信息進(jìn)行分析、協(xié)商、決策、控制FU。
3) 基于JADE的信息交互層用于與其他ACN的交互。JADE是基于JAVA語(yǔ)言的Agent開(kāi)發(fā)框架,它封裝了消息交換的接口,該接口符合FIPA(the foundation for intelligent physical agents)提出的Agent交互技術(shù)規(guī)范。
在本文的研究環(huán)境中,RFID讀寫(xiě)器的天線安裝在與FU相連的工位臺(tái)中。RFID讀寫(xiě)器作為信息的傳感節(jié)點(diǎn),通過(guò)TCP/IP或RS232/RS485通信協(xié)議實(shí)現(xiàn)與ACN的互連,從而構(gòu)建了獲取和傳輸生產(chǎn)信息的通道。自動(dòng)倉(cāng)儲(chǔ)系統(tǒng)的ACN從云端系統(tǒng)獲取訂單信息,并通過(guò)RFID讀寫(xiě)器將信息寫(xiě)入工件托盤(pán)的RFID標(biāo)簽。FU通過(guò)位于工位臺(tái)上的RFID讀寫(xiě)器來(lái)感知工件的到達(dá),并通過(guò)存儲(chǔ)在RFID標(biāo)簽中的信息來(lái)分析處理任務(wù)。通過(guò)ACN的感知,F(xiàn)U之間的工件傳輸相當(dāng)于在ACN之間信息傳輸。
ACN是執(zhí)行MA和PA的容器。如圖2所示,以銑削FU為例,ACN中的MA程序負(fù)責(zé)單元本身的操作。當(dāng)工件到達(dá)時(shí),當(dāng)前的ACN會(huì)將其視為一項(xiàng)任務(wù),與此部分對(duì)應(yīng)的PA程序此時(shí)處于靜默狀態(tài)。對(duì)于ACN而言,該部分等價(jià)于一串?dāng)?shù)據(jù),其中包括任務(wù)ID和工藝矩陣。
圖2 PA與MA
通過(guò)任務(wù)ID,ACN從車間服務(wù)器獲取與任務(wù)相關(guān)的信息。通過(guò)工藝矩陣,ACN可以獲取當(dāng)前工藝步驟。當(dāng)加工設(shè)備中沒(méi)有任務(wù)時(shí),ACN將從待加工的工位臺(tái)中選擇任務(wù)來(lái)進(jìn)行處理。選擇工件后,工件的數(shù)據(jù)將與相應(yīng)程序結(jié)合在一起以生成PA程序。ACN將充當(dāng)此PA運(yùn)行的容器,直到處理完該工件,并通過(guò)協(xié)商和交互確定下一步工藝的承擔(dān)設(shè)備。此后,該P(yáng)A程序?qū)⑼V惯\(yùn)行,該部分將再次轉(zhuǎn)換成一條數(shù)據(jù)的形式存在。
PA通常以一串?dāng)?shù)據(jù)的形式存在,并在需要時(shí)由ACN生成運(yùn)行程序。ACN的智能分析層負(fù)責(zé)管理MA和PA的線程。在這種模式下,PA不會(huì)總是占用計(jì)算空間和內(nèi)存,只存儲(chǔ)必要的數(shù)據(jù)在RFID標(biāo)簽中用于生成PA線程,并與車間中的工件一起流動(dòng)。
使用ACN,可以實(shí)現(xiàn)對(duì)DMW的性能改進(jìn)。如圖3所示,多個(gè)帶有ACN的FU共同構(gòu)成了一個(gè)分層控制系統(tǒng)。在該系統(tǒng)中,ACN的軟件程序可以抽象為一個(gè)虛擬操作層,稱為“自組織控制層”。該層主要負(fù)責(zé)個(gè)體自主和群體協(xié)商行為。從混合控制策略中可以得知,增加“監(jiān)視調(diào)控層”,以監(jiān)控車間整體信息,并且能對(duì)車間進(jìn)行調(diào)控,這樣可以保障全局性能。在本文的設(shè)計(jì)中,此“監(jiān)視調(diào)控層”將不會(huì)直接控制車間的決策,而只是影響ACN決策因子,從而間接控制車間決策,這保證了ACN是車間內(nèi)部的唯一控制者。
圖3 系統(tǒng)整體架構(gòu)
將車間內(nèi)的一組加工單元抽象成FU,通過(guò)ACN控制,以這樣的方式組成了一套MAMS。從傳統(tǒng)的角度來(lái)看,在MAMS中,MA和PA是基本組件,ACN的智能分析層負(fù)責(zé)管理Agent線程。作為決策節(jié)點(diǎn),ACN遵從設(shè)計(jì)人員制定的決策方式,并根據(jù)設(shè)計(jì)的流程完成決策過(guò)程。本文以實(shí)驗(yàn)室環(huán)境中的系統(tǒng)為例。無(wú)論ACN如何控制機(jī)床本身,僅從調(diào)度的角度來(lái)看,系統(tǒng)操作都可以簡(jiǎn)化為幾種類型的決策活動(dòng)。本文重點(diǎn)介紹系統(tǒng)運(yùn)行中的性能保證,并選擇以下兩個(gè)決策過(guò)程作為監(jiān)視調(diào)控層的調(diào)整對(duì)象。
1) 工件選擇機(jī)床:當(dāng)數(shù)據(jù)形成PA后,將監(jiān)視相應(yīng)工件當(dāng)前工藝流程的處理狀態(tài),并在即將完成處理時(shí)啟動(dòng)一輪協(xié)商決策。系統(tǒng)中具有相應(yīng)功能的MA將成為該協(xié)商的參與者,而PA是協(xié)商發(fā)起人與裁定者。在本文中,每個(gè)FU的負(fù)載、單位時(shí)間能耗以及工位臺(tái)使用率將作為決策因素。
2) 機(jī)床選擇工件:當(dāng)加工機(jī)床完成當(dāng)前的工件加工任務(wù)時(shí),根據(jù)協(xié)商規(guī)則,它將在工位臺(tái)中選擇下個(gè)工件進(jìn)行加工。在本文中,將選擇交貨日期、訂單日期和工件到達(dá)此FU的時(shí)間作為決策因素。
對(duì)于上述決策因子,進(jìn)行歸一化處理,并賦予不同權(quán)重,本文設(shè)計(jì)的監(jiān)控調(diào)控層將根據(jù)實(shí)際情況實(shí)時(shí)調(diào)整這些權(quán)重。如圖3所示,監(jiān)視層包含3個(gè)過(guò)程,認(rèn)知過(guò)程、分析過(guò)程和調(diào)控過(guò)程。以下基于3個(gè)過(guò)程分別敘述決策過(guò)程。
認(rèn)知過(guò)程:該過(guò)程負(fù)責(zé)統(tǒng)計(jì)和分類每個(gè)ACN上傳數(shù)據(jù),并將用于獲取工件信息列表和FU信息列表。工件信息列表記錄了每個(gè)工件的當(dāng)前處理進(jìn)度,而FU信息列表則負(fù)責(zé)記錄每個(gè)FU的工位臺(tái)和機(jī)器負(fù)載。
分析過(guò)程:根據(jù)需求設(shè)計(jì)各種指標(biāo)并設(shè)置相應(yīng)的參考值。分析過(guò)程是通過(guò)認(rèn)知過(guò)程中的數(shù)據(jù)來(lái)計(jì)算指標(biāo)的,并將其與相應(yīng)的參考值進(jìn)行比較,以確定是否執(zhí)行自組織規(guī)則修改。在本文中,使用一個(gè)設(shè)計(jì)指標(biāo)(臨近超時(shí)指標(biāo),near-delivery index, NDI)進(jìn)行說(shuō)明。NDI用于確定生產(chǎn)活動(dòng)中是否存在超時(shí)風(fēng)險(xiǎn)以及該超時(shí)風(fēng)險(xiǎn)的具體值。單個(gè)工件的NDI計(jì)算過(guò)程如下:
(1)
式中:Eti表示第i個(gè)工件的交貨日期與預(yù)估完工日期的差值;Rti表示第i個(gè)工件預(yù)估的剩余處理時(shí)間,即預(yù)估完工日期與當(dāng)前時(shí)刻的差值;NDIi表示第i個(gè)工件的NDI值。NDI的取值范圍是[0,1],NDI的值越小,過(guò)期任務(wù)的風(fēng)險(xiǎn)越大。系統(tǒng)時(shí)刻t的NDI值取正在進(jìn)行的工作的最小值,用NDIt表示。將在分析域中設(shè)置參考值,以確定是否需要根據(jù)NDIt調(diào)整當(dāng)前規(guī)則。
調(diào)控過(guò)程:本文通過(guò)NDI對(duì)“工件選擇機(jī)床”和“機(jī)床選擇工件”決策中各種決策因素的權(quán)重進(jìn)行調(diào)整。交貨日期越緊急,對(duì)生產(chǎn)資源能源消耗的考慮就越少,那么選擇負(fù)荷少、等待零件少的機(jī)器的可能性就越大。同時(shí),當(dāng)交貨日期更為緊急時(shí),處理單元優(yōu)先選擇交貨日期較短的零件進(jìn)行處理??偨Y(jié)上述各項(xiàng)因素,可以得出NDI與每個(gè)決策因子權(quán)重之間的相關(guān)性,設(shè)計(jì)調(diào)整函數(shù),或者當(dāng)NDI處于不同區(qū)間時(shí)直接設(shè)計(jì)權(quán)重值。
通過(guò)ACN在準(zhǔn)工業(yè)環(huán)境中實(shí)現(xiàn)了DMW的雛形,并形成了MAMS,車間布局如圖4所示。按照上一節(jié)的思路設(shè)計(jì)了監(jiān)控調(diào)控層,以調(diào)整生產(chǎn)過(guò)程中兩個(gè)決策過(guò)程(即“工件選擇機(jī)床”和“機(jī)床選擇工件”)中每個(gè)因素的權(quán)重。決策過(guò)程中每個(gè)因素的數(shù)值(例如能耗、各個(gè)時(shí)間點(diǎn)和負(fù)載)將由ACN在實(shí)際條件下實(shí)時(shí)計(jì)算。同時(shí),這些參數(shù)將被歸一化處理。為每個(gè)FU準(zhǔn)備了一個(gè)能耗采集設(shè)備,并將其連接到相應(yīng)的ACN。 在系統(tǒng)運(yùn)行期間,將基于先前的能耗值來(lái)預(yù)測(cè)下一步所需的能耗。節(jié)點(diǎn)的機(jī)床負(fù)載和加工時(shí)間等信息將通過(guò)Agent程序進(jìn)行收集統(tǒng)計(jì)。
圖4 工業(yè)環(huán)境實(shí)際部署樣例
本文通過(guò)重復(fù)執(zhí)行相同訂單的生產(chǎn)以驗(yàn)證多Agent制造系統(tǒng)的實(shí)際生產(chǎn)效果,比較3種模式之間的差異,包括無(wú)規(guī)則模式,即ACN在做出選擇時(shí)遵循先到先服務(wù)的原則、沒(méi)有監(jiān)控調(diào)控層的固定規(guī)則和本文提出的模式。通過(guò)計(jì)算超期時(shí)間和總能耗的總和,并將多次運(yùn)行后的平均值作為標(biāo)準(zhǔn),結(jié)果如圖5所示。在實(shí)際操作中,通過(guò)實(shí)時(shí)調(diào)整規(guī)則,可以更好地保持MAMS的整體性能。
圖5 實(shí)驗(yàn)結(jié)果
在現(xiàn)代制造環(huán)境中,DMW有望更靈活、更快速地適應(yīng)環(huán)境變化,并能動(dòng)態(tài)處理生產(chǎn)任務(wù)。MAMS被認(rèn)為是解決這類問(wèn)題的重要方法。但是,部署困難和缺乏全局性能保證措施限制了分層控制系統(tǒng)在實(shí)際工業(yè)現(xiàn)場(chǎng)的使用。而且最主要障礙之一是大多數(shù)基于Agent的研究?jī)H僅使用軟件仿真模擬而不集成物理設(shè)備。
針對(duì)這些問(wèn)題,本文提出了一種ACN概念,以改進(jìn)DMW中MAMS的實(shí)現(xiàn)。然后,研究監(jiān)控調(diào)控層以實(shí)時(shí)優(yōu)化ACN的自組織規(guī)則。通過(guò)監(jiān)控層,可以指導(dǎo)ACN做出有利于整體性能的決策。