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