孫陽君,趙 寧
(北京科技大學 機械工程學院,北京 100083)
隨著科學技術(shù)的發(fā)展和人力成本的增加,用機器人代替人工已經(jīng)成為主流。據(jù)《2019年世界機器人報告》[1]顯示,僅2018年全球就賣出了超過10萬的多機器人系統(tǒng),其中大多數(shù)用于電子商務(wù)倉庫中的多機器人存取系統(tǒng)(Robotic Mobile Fulfillment System, RMFS),RMFS已經(jīng)成為機器人應(yīng)用最廣泛的領(lǐng)域之一。2008年,Kiva systems公司[2]首先將RMFS用于亞馬遜的倉儲作業(yè),其利用貨架存儲商品,通過自動導(dǎo)引小車(Autonomous Guided Vehicle, AGV)搬運貨架[3]。相比傳統(tǒng)揀貨系統(tǒng),RMFS具有更高的揀貨效率、更好的系統(tǒng)可擴展性和柔性[4]。如圖1所示,在RMFS內(nèi),AGV掃描路塊上的二維碼,通過二維碼確定當前位置和移動方向,工作人員只需在工作站等待AGV將貨架搬運到固定位置,在固定位置揀貨即可,而不用進入存儲區(qū)域揀貨,AGV等工作人員揀貨完畢后再將貨架搬運回存儲區(qū)域,大大減少了工作人員的勞動強度,降低了人力成本,提升了系統(tǒng)的自動化和智能化程度。由于系統(tǒng)內(nèi)的AGV數(shù)量眾多,容易造成沖突和死鎖,AGV的調(diào)度和協(xié)同運行成為系統(tǒng)的核心。
很多學者對RMFS的調(diào)度和協(xié)同問題展開研究。針對多輛AGV之間的沖突問題,一些學者采用單項網(wǎng)絡(luò)布局減少沖突和死鎖,Zou等[5]在單項網(wǎng)絡(luò)的RMFS系統(tǒng)中提出一種AGV與揀選站匹配規(guī)則;鄒碧攀[6]對比了基于作業(yè)速率、近似最優(yōu)和最優(yōu)指派策略3種不同的任務(wù)分配策略,利用單向道避免沖突和堵塞;Zhang等[7]將單項網(wǎng)絡(luò)內(nèi)的AGV調(diào)度問題建模為具有傳輸時間的資源受限項目調(diào)度問題,設(shè)計了遺傳算法來分配任務(wù);Merschformann等[8]用啟發(fā)式規(guī)則進行任務(wù)分配,分析了選擇工作站和貨架的多種啟發(fā)式規(guī)則對單位吞吐量的影響。這些研究默認在使用單項網(wǎng)絡(luò)的情況下,系統(tǒng)內(nèi)的AGV之間不存在沖突和死鎖問題,對AGV運行路徑不做規(guī)劃,然而在AGV實際運行中依然會存在沖突問題,因此有學者研究了無沖突的路徑規(guī)劃,如Kamoshida等[9]提出一種深度強化學習的方法解決RMFS系統(tǒng)中的AGV路徑規(guī)劃問題,根據(jù)系統(tǒng)狀態(tài)從多個候選路徑中選擇適合AGV的無沖突路徑;Vivaldini等[10]在雙向網(wǎng)絡(luò)RMFS中采用Dijkstra’s算法和時間窗方法生成無沖突路徑,采用禁忌搜索算法進行任務(wù)分配;Merschformann等[11]用時間窗分層協(xié)同A*(Windowed Hierachical Cooperative A*,WHCA*)算法進行無沖突路徑規(guī)劃;Ma等[12]通過搭建仿真模型實現(xiàn)單向網(wǎng)絡(luò)中的AGV任務(wù)分配和無碰撞路徑規(guī)劃;Honig等[13]將單向網(wǎng)絡(luò)RMFS中的AGV調(diào)度問題變?yōu)槎啻砺窂綄ふ覇栴},利用動作依賴圖進行無沖突路徑規(guī)劃。除了采用單向網(wǎng)絡(luò)布局和構(gòu)建無沖突的路徑外,一些學者采用事后調(diào)度的方式消解AGV沖突,即在任務(wù)分配和路徑規(guī)劃完成后利用啟發(fā)式規(guī)則化解沖突。Guo等[14]提出基于Dijkstra’s算法和A*算法的路徑規(guī)劃方法,通過優(yōu)先級低的AGV避讓的方式解決RMFS兩個AGV間的沖突問題;Dou等[15]選擇讓剩余任務(wù)較少的AGV等待的方式解決AGV之間的沖突問題;Yuan等[16]用后到達車輛等待的方法解決同向沖突,用優(yōu)先級低的車輛等待的方法解決路口沖突;Wang等[17]用優(yōu)先級和重新規(guī)劃路徑的方法避開AGV間的沖突;Roy等[18]利用通道協(xié)議避免AGV沖突,即通道內(nèi)有AGV時不允許其他AGV經(jīng)過。這些研究多針對靜態(tài)調(diào)度,集中在任務(wù)分配和路徑規(guī)劃與調(diào)度中,對系統(tǒng)的實時運行情況考慮不足,在系統(tǒng)發(fā)生動態(tài)變化時難以做到及時響應(yīng)。
一些學者考慮到系統(tǒng)運行的動態(tài)環(huán)境,對系統(tǒng)內(nèi)的車輛進行無沖突調(diào)度。張丹露等[19]利用改進的A*算法、預(yù)約表和動態(tài)加權(quán)地圖進行動態(tài)協(xié)同路徑規(guī)劃,通過集中分配任務(wù)、分布式進行路徑規(guī)劃,利用預(yù)約表和交通規(guī)則來避免AGV沖突;Yoshitake等[20]建立了一種實時整體調(diào)度方法進行RMFS實時調(diào)度;Lee等[21]基于網(wǎng)絡(luò)物理系統(tǒng),根據(jù)AGV當前狀態(tài)采用改進A*算法規(guī)劃路徑,然后選擇完成時間最短的路徑作為AGV路徑,利用時間窗檢測沖突,并采用離開、繞路和啟動前等待3種方式避開雙向網(wǎng)絡(luò)中的持續(xù)沖突、對頭沖突和交叉口沖突,在RMFS系統(tǒng)中驗證了動態(tài)無沖突調(diào)度策略;董朝瑞等[22]通過機器人模塊從中央控制模塊處獲得沖突協(xié)調(diào)信息和地圖環(huán)境,幫助AGV解決動態(tài)運行中的沖突問題;Guney等[23]開發(fā)了一個基于優(yōu)先級的AGV車輛運動協(xié)調(diào)算法解決單向網(wǎng)絡(luò)RMFS中的AGV沖突問題,算法可以實時調(diào)整AGV的優(yōu)先級,當AGV之間發(fā)生沖突時,優(yōu)先級最高的AGV繼續(xù)運行而其他AGV停車等待。這些研究多用動態(tài)調(diào)度方法解決系統(tǒng)中的AGV沖突問題,調(diào)度結(jié)果表現(xiàn)很好。
然而,這些研究對AGV的運行情況預(yù)測不足,大部分研究均在沖突發(fā)生后進行協(xié)調(diào),造成AGV出現(xiàn)不必要的等待和停頓,因此建立在精準仿真預(yù)測基礎(chǔ)上的集中式調(diào)度成為系統(tǒng)進一步提升的關(guān)鍵。雖然AGV的運行情況能夠預(yù)測,但是RMFS中有人參與的作業(yè)完成時間是變化且不可預(yù)測的;另外,在實際運行中,物理系統(tǒng)很難完全符合調(diào)度方案的預(yù)期,系統(tǒng)內(nèi)的AGV運行和人員操作會受各種干擾,并非完全可控。現(xiàn)有調(diào)度模型基本不考慮這些變化和干擾,例如AGV發(fā)生故障或工作站工人不到位,然而這些事件容易影響系統(tǒng)原有的調(diào)度方案,對原有方案造成擾動。原有調(diào)度方案若不能依計劃實行,則容易導(dǎo)致后續(xù)調(diào)度方案出現(xiàn)問題,最終造成系統(tǒng)內(nèi)出現(xiàn)更加嚴重的沖突和死鎖。另外,由于RMFS中的訂單為實時到達,AGV執(zhí)行的任務(wù)隨訂單確定,大大增加了調(diào)度的難度,對調(diào)度提出了新要求。在此背景下,數(shù)字孿生技術(shù)的發(fā)展為提高預(yù)測水平、解決擾動和實時調(diào)度提出了新思路。
數(shù)字孿生是利用數(shù)字化手段構(gòu)建如同物理系統(tǒng)實體的孿生體一般的虛擬系統(tǒng),從而借助物理實體數(shù)據(jù)、實時運行數(shù)據(jù)、歷史數(shù)據(jù)等在虛擬系統(tǒng)中模擬物理系統(tǒng)的運行,通過仿真優(yōu)化和虛實交互促進物理系統(tǒng)智能運行[24],其在智能工廠建設(shè)[25]、智能制造[26]、生產(chǎn)車間[27]、分布式智能車間[28]、車間生產(chǎn)過程[29]及智能生產(chǎn)管理和控制[30]中有廣泛的應(yīng)用。數(shù)字孿生能夠在真實的物理世界和虛擬的信息世界之間架起一座實時同步且高度保真的橋梁[31-32]。北京航空航天大學的陶飛教授團隊[33]建立了數(shù)字孿生技術(shù)五維模型,探索了其在車輛、立體倉庫等十大領(lǐng)域的應(yīng)用;Zhang等[34]提出基于數(shù)字孿生技術(shù)的中空玻璃生產(chǎn)線的快速個性化設(shè)計,以及生產(chǎn)過程中耦合問題的解耦算法,解決了生產(chǎn)過程中的沖突;Liu等[35]利用數(shù)字孿生驅(qū)動流水車間的個性化設(shè)計,實現(xiàn)了系統(tǒng)靜態(tài)配置和動態(tài)執(zhí)行機制的互相迭代優(yōu)化;Fang等[36]利用數(shù)字孿生技術(shù)解決作業(yè)車間調(diào)度中突發(fā)的動態(tài)問題并進行預(yù)測;李浩等[37]利用數(shù)字孿生技術(shù)預(yù)測設(shè)備的動態(tài)性能;郭飛燕等[38]通過數(shù)字孿生技術(shù)預(yù)測產(chǎn)品裝配情況,實現(xiàn)了“以虛控實”的過程;Luo等[39]建立數(shù)字孿生模型對數(shù)控機床的道具壽命進行預(yù)測。以上研究可以看出,數(shù)字孿生技術(shù)可以聯(lián)通虛擬世界和現(xiàn)實世界,已經(jīng)在制造車間等集中調(diào)度領(lǐng)域取得了較好的研究成果,其能夠?qū)崿F(xiàn)實時調(diào)度并響應(yīng)物理系統(tǒng)變化,保證虛擬系統(tǒng)和物理系統(tǒng)一致,避免出現(xiàn)調(diào)度方案不符合實際的情況,而且利用虛擬系統(tǒng)仿真驗證各方案能夠降低系統(tǒng)運行成本,實現(xiàn)系統(tǒng)的高效運轉(zhuǎn)。
基于數(shù)字孿生的RMFS由4部分組成,即物理系統(tǒng)、虛擬系統(tǒng)、聯(lián)系兩者的孿生數(shù)據(jù)中心,以及確保三者互相映射的系統(tǒng)支撐服務(wù),如圖2所示。
(1)物理系統(tǒng) 是真實的系統(tǒng),主要接收數(shù)據(jù)中心傳遞的指令,根據(jù)指令運行,并利用傳感器等采集實時運行數(shù)據(jù)和物理系統(tǒng)數(shù)據(jù)。物理系統(tǒng)內(nèi)部的人員操作系統(tǒng)、AGV控制系統(tǒng)、傳感器等系統(tǒng)和裝置將實時運行數(shù)據(jù)傳送到孿生數(shù)據(jù)中心。
(2)虛擬系統(tǒng) 是根據(jù)物理系統(tǒng)建立的虛擬模型,為物理系統(tǒng)的孿生體,主要功能包括建立虛擬系統(tǒng)模型、生成初始調(diào)度方案、運行仿真調(diào)度方案和實時調(diào)整調(diào)度方案。虛擬系統(tǒng)模型是根據(jù)孿生數(shù)據(jù)中心的虛擬系統(tǒng)數(shù)據(jù)和實時運行數(shù)據(jù)建立并持續(xù)維護的模型,其涉及的虛擬系統(tǒng)數(shù)據(jù)是將物理系統(tǒng)中的物理系統(tǒng)數(shù)據(jù)進行處理后得到的。虛擬系統(tǒng)模型可用于仿真調(diào)度方案的運行,能夠根據(jù)方案在不同評價指標下的表現(xiàn)選擇合適的方案。最后,將合適的調(diào)度方案傳遞到孿生數(shù)據(jù)中心指導(dǎo)物理系統(tǒng)運行。
(3)孿生數(shù)據(jù)中心 是溝通物理系統(tǒng)和虛擬系統(tǒng)的橋梁,其功能包括數(shù)據(jù)處理、數(shù)據(jù)存儲、數(shù)據(jù)對比和傳輸。數(shù)據(jù)處理包括將物理系統(tǒng)數(shù)據(jù)轉(zhuǎn)化為虛擬系統(tǒng)數(shù)據(jù)、將訂單數(shù)據(jù)轉(zhuǎn)化為任務(wù)數(shù)據(jù)、將虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù)轉(zhuǎn)化為運行指令,存儲的數(shù)據(jù)包括物理系統(tǒng)數(shù)據(jù)、物理系統(tǒng)實時運行數(shù)據(jù)、訂單數(shù)據(jù)、任務(wù)數(shù)據(jù)、虛擬系統(tǒng)數(shù)據(jù)、虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù)等,數(shù)據(jù)對比是對比物理系統(tǒng)實時運行數(shù)據(jù)和虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù),這些數(shù)據(jù)通過數(shù)據(jù)傳輸協(xié)議和無線網(wǎng)通訊來保證傳輸?shù)陌踩浴⒓皶r性和可靠性。
(4)系統(tǒng)支撐服務(wù) 系統(tǒng)支撐服務(wù)能夠確保以上三部分互相映射,包括為物理系統(tǒng)人員提供的操作系統(tǒng)和為AGV提供的控制系統(tǒng)、為虛擬系統(tǒng)提供的模型搭建方法和方案生成方法、為孿生數(shù)據(jù)中心提供的數(shù)據(jù)處理方法等。物理系統(tǒng)、虛擬系統(tǒng)和孿生數(shù)據(jù)中心除了根據(jù)各自需求調(diào)用支撐服務(wù)內(nèi)的各個模塊外,還會根據(jù)當前系統(tǒng)狀態(tài)集中調(diào)用多個模塊。系統(tǒng)支撐服務(wù)內(nèi)各模塊提供的不只是單個服務(wù),其還將物理系統(tǒng)、虛擬系統(tǒng)和孿生數(shù)據(jù)中心三者進行結(jié)合,保證三者互相映射,從而支撐整個系統(tǒng)運行,是基于數(shù)字孿生的集中式調(diào)度系統(tǒng)運行的重要保障,決定了系統(tǒng)整體運行的效率。
基于數(shù)字孿生的RMFS系統(tǒng)集中式調(diào)度流程圖如圖3所示,具體步驟如下:
步驟1當在孿生數(shù)據(jù)中心處理輸入的訂單時,將訂單轉(zhuǎn)變?yōu)橄鄳?yīng)的揀貨任務(wù)和補貨任務(wù),將任務(wù)信息轉(zhuǎn)化為任務(wù)數(shù)據(jù)并傳輸?shù)教摂M系統(tǒng)進行后續(xù)操作。其中,訂單處理方法由系統(tǒng)支撐服務(wù)提供。
步驟2在虛擬系統(tǒng)中,根據(jù)任務(wù)數(shù)據(jù)和實時運行數(shù)據(jù)集中生成初始調(diào)度方案,即擾動發(fā)生前的調(diào)度方案,初始調(diào)度方案的生成方法由系統(tǒng)支撐服務(wù)提供,需要利用任務(wù)分配、路徑規(guī)劃和調(diào)度優(yōu)化等多個模塊。
步驟3在虛擬系統(tǒng)中,采用搭建好的虛擬系統(tǒng)模型仿真步驟2中生成的多個調(diào)度方案。其中,虛擬系統(tǒng)模型的搭建方法由系統(tǒng)支撐服務(wù)提供。
步驟4在虛擬系統(tǒng)中,根據(jù)仿真結(jié)果確定最優(yōu)調(diào)度方案,并將仿真結(jié)果數(shù)據(jù)傳送到孿生數(shù)據(jù)中心。
步驟5孿生數(shù)據(jù)中心根據(jù)接收到的仿真結(jié)果數(shù)據(jù)生成相應(yīng)的指令傳送給物理系統(tǒng)。
步驟6在物理系統(tǒng)讀取孿生數(shù)據(jù)中心傳遞的指令,根據(jù)指令指導(dǎo)人員操作和AGV運行。例如,通過看板展現(xiàn)人員需要操作的商品和數(shù)量,向AGV控制系統(tǒng)發(fā)送AGV的啟動、停止、轉(zhuǎn)彎、等待、升/降貨架等指令。
步驟7在物理系統(tǒng),通過人員操作系統(tǒng)、AGV控制系統(tǒng)、傳感器等系統(tǒng)或裝置搜集實時運行數(shù)據(jù),將其上傳到孿生數(shù)據(jù)中心。
步驟8在孿生數(shù)據(jù)中心對比虛擬系統(tǒng)的仿真結(jié)果數(shù)據(jù)和物理系統(tǒng)的實時運行數(shù)據(jù),若出現(xiàn)異常數(shù)據(jù),則進入步驟9;若未出現(xiàn)數(shù)據(jù)異常,則依次循環(huán)步驟6~步驟8,直到所有指令都完成,從而完成訂單,系統(tǒng)運行結(jié)束。
步驟9在孿生數(shù)據(jù)中心,通過對比數(shù)據(jù)確定有異常的數(shù)據(jù),將異常數(shù)據(jù)上傳到虛擬系統(tǒng),并根據(jù)異常數(shù)據(jù)對虛擬系統(tǒng)模型進行更新。
步驟10在虛擬系統(tǒng)根據(jù)接收的異常數(shù)據(jù)確定擾動原因,根據(jù)不同的原因,依靠不同的重調(diào)度規(guī)則生成重調(diào)度方案,重調(diào)度方案的生成方法由系統(tǒng)支撐服務(wù)提供,需要利用訂單處理、任務(wù)分配、路徑規(guī)劃和調(diào)度優(yōu)化等多個模塊,然后返回步驟3。
物理系統(tǒng)是實際運行的系統(tǒng),其主要功能是接收指令和采集數(shù)據(jù),圖4所示為物理系統(tǒng)的工作機制。
物理系統(tǒng)接收孿生數(shù)據(jù)中心下發(fā)的運行指令,即物理系統(tǒng)的輸入,接收指令的對象是系統(tǒng)內(nèi)的工作人員和AGV兩大實體。工作人員通過人員操作系統(tǒng)獲取操作指令,根據(jù)看板上的顯示確定操作類型以及涉及的商品、位置和數(shù)量;AGV通過控制系統(tǒng)接收指令,確定在路塊上的啟動時間和停止時間,以及在路塊上的轉(zhuǎn)彎、等待、升/降貨架等動作。工作人員和AGV接收指令后根據(jù)指令運行,而且人員操作系統(tǒng)和AGV控制系統(tǒng)均在系統(tǒng)支撐服務(wù)中開發(fā)。
采集數(shù)據(jù)包括采集物理系統(tǒng)數(shù)據(jù)和采集物理系統(tǒng)實時運行數(shù)據(jù):
(1)物理系統(tǒng)數(shù)據(jù)主要包括系統(tǒng)內(nèi)各個設(shè)備和區(qū)域的尺寸、人員完成不同操作時的時間、AGV在不同情況下的速度和加速度、貨架和商品的位置數(shù)量信息等。這部分數(shù)據(jù)會傳輸?shù)綄\生數(shù)據(jù)中心,用來建立虛擬系統(tǒng),保證虛擬系統(tǒng)和物理系統(tǒng)形如孿生體。
(2)物理系統(tǒng)實時運行數(shù)據(jù)包括工作人員的操作數(shù)據(jù)、AGV的實際運行數(shù)據(jù)和狀態(tài)數(shù)據(jù)。工作人員通過人員操作系統(tǒng)上的各個按鈕確定當前任務(wù)完成,并將任務(wù)信息和操作時間等數(shù)據(jù)作為實時運行數(shù)據(jù)。AGV通過自身攜帶的各種傳感器檢測運行情況,包括視覺傳感器確定AGV進入的路塊代號和時間,力學傳感器確定AGV是否轉(zhuǎn)彎和負載/空載狀態(tài),AGV的運行數(shù)據(jù)和狀態(tài)數(shù)據(jù)將作為實時運行數(shù)據(jù);利用工作站的RFID可以監(jiān)控AGV是否準時準確進入工作站,AGV進入工作站的時間和工作站信息也將作為實時運行數(shù)據(jù)。將這些實時運行數(shù)據(jù)上傳到孿生數(shù)據(jù)中心,用于和仿真數(shù)據(jù)比對。一些特定的數(shù)據(jù),如人員揀貨時間和任務(wù)完成時間,會直接傳遞到虛擬系統(tǒng),輔助虛擬系統(tǒng)進行下一步?jīng)Q策。
另外,物理系統(tǒng)還有針對環(huán)境的監(jiān)控,其根據(jù)監(jiān)控到的溫度、濕度、壓力等數(shù)據(jù)進行自動調(diào)節(jié)和預(yù)警,以增加員工工作的舒適程度,確保貨品保存得更好,防止出現(xiàn)火災(zāi)等意外情況。利用攝像頭對路塊路面進行監(jiān)控,確定是否有障礙物,并在出現(xiàn)商品跌落、人員走動等情況時及時響應(yīng)。
虛擬系統(tǒng)是物理系統(tǒng)的孿生體,其能夠模仿物理系統(tǒng)的運行,并為物理系統(tǒng)的運行提供支撐,還能夠根據(jù)物理系統(tǒng)反饋的結(jié)果進行及時調(diào)整,以處理物理系統(tǒng)中的各種突發(fā)狀況。虛擬系統(tǒng)主要由虛擬系統(tǒng)模型、實時生成和調(diào)整調(diào)度方案、仿真調(diào)度方案3部分組成,通過這3部分實現(xiàn)方案的生成和仿真功能。虛擬系統(tǒng)的運行機制如圖5所示。
虛擬系統(tǒng)模型是虛擬系統(tǒng)的基礎(chǔ),模型的基礎(chǔ)數(shù)據(jù)為經(jīng)過數(shù)據(jù)中心處理的物理數(shù)據(jù),根據(jù)物理實體對應(yīng)的物理數(shù)據(jù)在虛擬平臺上建立多個子模塊,再根據(jù)物理實體之間的關(guān)聯(lián)連接各模塊,最終組合為虛擬系統(tǒng)模型。所建立的子模塊包括人員操作模塊、AGV運行模塊、貨架存儲模塊和商品庫存模塊。虛擬系統(tǒng)模型還會通過實時運行數(shù)據(jù)進行修正,以保證其更接近物理系統(tǒng),尤其在發(fā)生意外事件之后,虛擬系統(tǒng)模型需要及時根據(jù)異常數(shù)據(jù)進行調(diào)整,按照物理系統(tǒng)的實時運行數(shù)據(jù)進行更新,以保證仿真調(diào)度方案的真實性。如果物理系統(tǒng)內(nèi)有部分實體如AGV或工人出現(xiàn)異常,則需要按照出現(xiàn)的異常情況修改虛擬模型中對應(yīng)實體的狀態(tài),例如AGV出現(xiàn)故障時,需要將AGV狀態(tài)從可用調(diào)為不可用,將AGV出現(xiàn)故障的路塊調(diào)為持續(xù)占用中。虛擬系統(tǒng)模型的搭建方法由系統(tǒng)的支撐服務(wù)提供。
實時生成和調(diào)整調(diào)度方案的主要輸入是物理系統(tǒng)運行數(shù)據(jù)、任務(wù)數(shù)據(jù)和實時運行數(shù)據(jù),根據(jù)現(xiàn)有數(shù)據(jù)和系統(tǒng)狀態(tài),以及實時到達的任務(wù)和可能的擾動能夠確定當前可以執(zhí)行的調(diào)度方案。實時生成和調(diào)整調(diào)度方案分為生成初始調(diào)度方案和生成重調(diào)度方案兩部分。初始調(diào)度方案在任務(wù)到達之后對任務(wù)進行分配,確定執(zhí)行任務(wù)的AGV和運行路徑,即AGV需要經(jīng)過的路塊順序,以及AGV在運行中的其他動向,包括啟動、停止、轉(zhuǎn)彎、等待、升/降貨架等。物理系統(tǒng)按照調(diào)度方案運行時上傳實時運行數(shù)據(jù),孿生數(shù)據(jù)中心在對比時如果發(fā)現(xiàn)異常數(shù)據(jù),即任務(wù)不能順利完成,則需要生成重調(diào)度方案。在實際運行中,導(dǎo)致異常數(shù)據(jù)的擾動是不同的,這些擾動包括AGV故障、工作站工人不到位、AGV路徑前方有突發(fā)障礙、AGV運行時間發(fā)生變化等。孿生數(shù)據(jù)中心將異常數(shù)據(jù)傳送到虛擬系統(tǒng)后,虛擬系統(tǒng)確定發(fā)生擾動的原因,根據(jù)不同的原因調(diào)用系統(tǒng)支撐服務(wù)中的不同模塊生成重調(diào)度方案。在實時生成和調(diào)整調(diào)度方案這一階段生成的初始調(diào)度方案和重調(diào)度方案均需在虛擬系統(tǒng)模型中進行仿真驗證。
仿真調(diào)度方案借助虛擬模型仿真之前生成的調(diào)度方案,再將調(diào)度方案的仿真結(jié)果返回到孿生數(shù)據(jù)中心。仿真的調(diào)度方案由生成初始調(diào)度方案和實時調(diào)整調(diào)度方案這兩部分生成,目的是驗證生成的多個調(diào)度方案能否無沖突地運行,并從中選擇平衡多目標的調(diào)度方案,如果調(diào)度方案運行不能保證無沖突,則返回重新生成調(diào)度方案。仿真過程中將統(tǒng)計相關(guān)的運行數(shù)據(jù),包括完成時間、AGV利用率、AGV啟停次數(shù)、工作站任務(wù)平衡程度等,這些數(shù)據(jù)中的一部分會被作為評價指標。仿真方案的評價選擇方法與系統(tǒng)中不同的決策傾向相關(guān),應(yīng)根據(jù)系統(tǒng)中不同的決策傾向選擇不同的評價指標和評價方法,例如用Pareto解確定最優(yōu)邊界后,再用層次分析法選擇最優(yōu)調(diào)度方案;通過給定評價指標之間的優(yōu)先級進行選擇;采用線性加權(quán)的方法處理多個評價指標,選擇權(quán)重和最優(yōu)的調(diào)度方案等。另外,還會利用實時運行數(shù)據(jù)優(yōu)化選擇方法。
孿生數(shù)據(jù)中心能夠聯(lián)系物理系統(tǒng)和虛擬系統(tǒng),主要用于存儲數(shù)據(jù)、處理數(shù)據(jù)、對比數(shù)據(jù)等,其通過數(shù)據(jù)傳輸協(xié)議和無線網(wǎng)通訊保證系統(tǒng)間的交互。孿生數(shù)據(jù)中心的運行機制如圖6所示。
存儲的數(shù)據(jù)包括物理系統(tǒng)數(shù)據(jù)、物理系統(tǒng)實時運行數(shù)據(jù)、訂單數(shù)據(jù)、任務(wù)數(shù)據(jù)、虛擬系統(tǒng)數(shù)據(jù)、虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù)等。物理系統(tǒng)數(shù)據(jù)和物理系統(tǒng)實時運行數(shù)據(jù)均傳輸自物理系統(tǒng);訂單數(shù)據(jù)由RMFS輸入的訂單生成;任務(wù)數(shù)據(jù)由訂單數(shù)據(jù)經(jīng)過孿生數(shù)據(jù)中心處理后得到;虛擬系統(tǒng)數(shù)據(jù)由物理系統(tǒng)數(shù)據(jù)經(jīng)過孿生數(shù)據(jù)中心處理后得到;虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù)傳輸自虛擬系統(tǒng)。
數(shù)據(jù)處理包括將物理系統(tǒng)數(shù)據(jù)轉(zhuǎn)化為虛擬系統(tǒng)數(shù)據(jù)、將訂單數(shù)據(jù)轉(zhuǎn)化為任務(wù)數(shù)據(jù)、將虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù)轉(zhuǎn)化為運行指令:
(1)將物理系統(tǒng)數(shù)據(jù)轉(zhuǎn)化為虛擬系統(tǒng)數(shù)據(jù) 是針對搜集到的物理系統(tǒng)數(shù)據(jù),采用系統(tǒng)支撐服務(wù)中的數(shù)據(jù)處理方法轉(zhuǎn)化為建立虛擬系統(tǒng)模型必備的數(shù)據(jù),即虛擬系統(tǒng)數(shù)據(jù)。
(2)將訂單數(shù)據(jù)轉(zhuǎn)化為任務(wù)數(shù)據(jù) 是針對RMFS實時輸入的訂單,采用系統(tǒng)支撐服務(wù)中的訂單處理方法轉(zhuǎn)化為相關(guān)的任務(wù)數(shù)據(jù)。任務(wù)數(shù)據(jù)包括任務(wù)類型、貨架代號、工作站代號、商品存儲位置、揀貨數(shù)量等。
(3)將虛擬系統(tǒng)仿真結(jié)果數(shù)據(jù)轉(zhuǎn)化為運行指令 包括針對AGV的啟動、停止等運行指令,轉(zhuǎn)彎、等待、升/降貨架等動作指令,以及針對人員的揀貨、補貨、盤點等操作指令。
數(shù)據(jù)對比是對比物理系統(tǒng)的實時運行數(shù)據(jù)和虛擬系統(tǒng)的仿真結(jié)果數(shù)據(jù),主要包括仿真中AGV啟動、停止的路塊和時間與實際運行中AGV進入、離開路塊的時間,仿真中AGV在路塊上的動作情況和實際運行中AGV轉(zhuǎn)彎、等待、升/降貨架的路塊,以及仿真中人員操作類型、對象和實際運行中人員揀貨、補貨、盤點的貨架與商品,如果出現(xiàn)異常,則需上報虛擬系統(tǒng),確定擾動原因后進行重調(diào)度操作。這些異常數(shù)據(jù)可以輔助更新虛擬模型,以避免物理系統(tǒng)和虛擬系統(tǒng)出現(xiàn)偏差,減少實際運行和調(diào)度計劃之間的差異。
系統(tǒng)支撐服務(wù)為物理系統(tǒng)、虛擬系統(tǒng)和孿生數(shù)據(jù)中心的運行提供支撐,是數(shù)字孿生系統(tǒng)的基石和保障。系統(tǒng)支撐服務(wù)包括為物理系統(tǒng)的人員提供的操作系統(tǒng)和為AGV提供的控制系統(tǒng)、為虛擬系統(tǒng)提供的模型搭建方法和方案生成方法、為孿生數(shù)據(jù)中心提供的數(shù)據(jù)處理方法等,詳細模塊如圖7所示。
為物理系統(tǒng)的人員提供的操作系統(tǒng)和為AGV提供的控制系統(tǒng)分別幫助人員和AGV在物理系統(tǒng)中讀取指令并實現(xiàn)系統(tǒng)運行:
(1)人員操作系統(tǒng)的開發(fā)流程 通過分析物理系統(tǒng)確定人員操作邏輯,按照邏輯分析系統(tǒng)需求,再根據(jù)需求確定系統(tǒng)功能模塊,然后針對各模塊設(shè)計相應(yīng)的操作流程,根據(jù)操作流程設(shè)計系統(tǒng)界面,完成所有設(shè)計后部署系統(tǒng)的運行環(huán)境,最后完成系統(tǒng)開發(fā)與實現(xiàn),將系統(tǒng)交付工作人員使用。
(2)AGV控制系統(tǒng)的開發(fā)流程 通過分析物理系統(tǒng)確定AGV的運行邏輯,按照邏輯分析AGV的運行需求,再根據(jù)需求確定系統(tǒng)功能模塊,然后針對各模塊設(shè)計AGV對自身其他零部件系統(tǒng)的控制方式,根據(jù)控制方式設(shè)計系統(tǒng)界面,完成所有設(shè)計后部署系統(tǒng)的運行環(huán)境,最后完成系統(tǒng)開發(fā)與實現(xiàn),將系統(tǒng)用于AGV控制。
為虛擬系統(tǒng)提供的模型搭建方法是借助孿生數(shù)據(jù)中心的虛擬系統(tǒng)數(shù)據(jù)和物理系統(tǒng)總結(jié)得到的系統(tǒng)運行邏輯,利用模塊化建模方法分別建立人員操作模塊、AGV運行模塊、貨架存儲模塊和商品庫存模塊。模塊建立所需的相關(guān)數(shù)據(jù)是物理系統(tǒng)中獲得的虛擬數(shù)據(jù),在物理系統(tǒng)運行中,所建立的各模塊還應(yīng)根據(jù)實時運行數(shù)據(jù)進行修正,以確保和物理系統(tǒng)虛實一致。確定各模塊的功能邏輯和輸入輸出后,建立模塊間的關(guān)聯(lián)模型,并通過RFID、傳感器等裝置維持不同模塊之間的通信。然后統(tǒng)計和分析模型運行數(shù)據(jù),利用3D設(shè)計軟件完成模型可視化和數(shù)據(jù)可視化。另外,還可通過實時運行數(shù)據(jù)對模型中的部分參數(shù)進行調(diào)整。
為虛擬系統(tǒng)提供的方案生成方法主要用于虛擬系統(tǒng)中實時生成和調(diào)整調(diào)度方案,主要包括任務(wù)分配、路徑規(guī)劃和調(diào)度優(yōu)化3個模塊:
(1)任務(wù)分配 即將已經(jīng)確定好的任務(wù)分配給AGV執(zhí)行。任務(wù)分配的方法包括利用不同智能算法編碼、不同的啟發(fā)式規(guī)則等,可以根據(jù)所反饋的實時運行數(shù)據(jù),在不同情況下使用不同的任務(wù)分配方法。
(2)路徑規(guī)劃 是為AGV規(guī)劃完成任務(wù)的三段路徑,包括AGV從當前位置到貨架所在位置、從貨架所在位置到工作站、從工作站返回存儲區(qū)域。三段路徑并非一次規(guī)劃完成,而是在實際運行中按照調(diào)度需求在不同時間規(guī)劃不同階段的路徑。路徑規(guī)劃算法一般采用深度強化學習、Q-learning算法、蒙特卡洛樹搜索等。實時運行數(shù)據(jù)可以對這些路徑規(guī)劃算法內(nèi)的參數(shù)進行調(diào)整,根據(jù)AGV實時運行情況選擇不同的路徑規(guī)劃算法。
(3)調(diào)度優(yōu)化 是對多AGV的協(xié)同運作進行優(yōu)化,采用一種或幾種算法和規(guī)則生成多個可行且較優(yōu)的調(diào)度方案。調(diào)度優(yōu)化可以和任務(wù)分配協(xié)同編碼,使用智能算法生成調(diào)度方案。在生成調(diào)度方案時,利用啟發(fā)式規(guī)則處理AGV之間的沖突問題,啟發(fā)式規(guī)則可以采用提前主動等待、允許修改路徑、遇到?jīng)_突時根據(jù)優(yōu)先級決定通過和停止的AGV等。另外,實時運行數(shù)據(jù)能夠優(yōu)化智能算法和啟發(fā)式規(guī)則。
在為虛擬系統(tǒng)提供支撐時,這3個模塊并非分開調(diào)用,而是按照一定規(guī)則多次集中調(diào)用。
例如,生成初始調(diào)度方案的步驟分為為未完成的任務(wù)集中分配AGV、對AGV完成任務(wù)的路徑進行規(guī)劃、生成多個可用的調(diào)度方案3步。生成的初始調(diào)度方案即沒有擾動發(fā)生的調(diào)度方案,當前時間t時系統(tǒng)數(shù)據(jù)的不同,初始調(diào)度方案不同,具體流程如圖8所示,步驟如下:①根據(jù)當前時間t,按照任務(wù)數(shù)據(jù)確定可以開始的任務(wù),按照AGV數(shù)據(jù)確定可以接取任務(wù)的AGV,進入②,如果所有任務(wù)都被分配給AGV,則轉(zhuǎn)③;②對這些AGV進行任務(wù)分配,根據(jù)分配到的任務(wù)規(guī)劃AGV從當前位置到貨架所在位置和從貨架所在位置到工作站的路徑,按照調(diào)度優(yōu)化方法確定AGV的調(diào)度方案,并輸出調(diào)度方案;③根據(jù)傳遞來的揀貨完成時間t1這一實時運行數(shù)據(jù),令t=t1,執(zhí)行下一步;④對揀貨完成的AGV規(guī)劃從工作站返回存儲區(qū)域的路徑,按照調(diào)度優(yōu)化方法確定AGV的調(diào)度方案,并輸出調(diào)度方案;⑤根據(jù)傳遞來的任務(wù)完成時間t2這一實時運行數(shù)據(jù),令t=t2,返回①,直到所有任務(wù)都被完成,生成初始調(diào)度方案的流程結(jié)束。
如果孿生數(shù)據(jù)中心向虛擬系統(tǒng)傳遞了異常數(shù)據(jù),則需在虛擬系統(tǒng)中實時調(diào)整調(diào)度方案,即生成重調(diào)度方案。由于不同的擾動原因?qū)ο到y(tǒng)的影響程度不同,需要根據(jù)不同的擾動原因、借助不同的重調(diào)度規(guī)則生成重調(diào)度方案,再仿真調(diào)度方案,根據(jù)仿真結(jié)果得到可行的調(diào)度方案作為指導(dǎo)物理系統(tǒng)運行的重調(diào)度方案。重調(diào)度規(guī)則包括重生成任務(wù)數(shù)據(jù)、重分配任務(wù)、重規(guī)劃路徑和重調(diào)度,對于不同的擾動原因,適用的重調(diào)度規(guī)則不同,如圖9所示。
對于AGV故障這一擾動,首先進行故障診斷,如果為短時間內(nèi)可自行修復(fù)的故障,則修復(fù)后AGV可以繼續(xù)執(zhí)行任務(wù),直接從受影響時刻起重新調(diào)度即可。如果需要長時間檢修,則考慮AGV是否有負載,是則意味著任務(wù)還未完成,但AGV已經(jīng)不可用,先將負載的AGV拖離原路塊,這一步要規(guī)劃移動AGV的路徑,根據(jù)路徑規(guī)劃利用調(diào)度優(yōu)化方案生成重調(diào)度方案。然后,將這輛損壞AGV當前在執(zhí)行的任務(wù)和后續(xù)所有任務(wù)都重新分配給其他AGV,并為這些任務(wù)進行路徑規(guī)劃,執(zhí)行后續(xù)的調(diào)度操作。不負載的AGV暫時留在原地,等到時機合適再拖離當前路塊。在AGV沒有離開故障位置之前,這一路塊或者幾個路塊將不可用,可能造成某一條通道不可用,其他遭受影響的AGV也需要重新調(diào)度,此時按照AGV路徑前方有突發(fā)障礙的情況進行重調(diào)度。對于這種情況,直接重規(guī)劃AGV路徑,再生成重調(diào)度方案。
對于工作站工人不到位這一擾動,首先確定工作站故障的時間長短,如果是短時間的,則不改變?nèi)蝿?wù)分配和路徑規(guī)劃,從受影響時刻起重新調(diào)度;如果時間長,則影響該工作站分配到的所有訂單,需要從訂單處理開始重新生成任務(wù)數(shù)據(jù),再重分配其他AGV執(zhí)行任務(wù),根據(jù)新任務(wù)要求和AGV運行情況重新進行路徑規(guī)劃,最后生成重調(diào)度方案。對于其他影響較小的擾動,如果時間上發(fā)生變化,例如AGV運行時間發(fā)生變化,則從受影響時刻開始重新調(diào)度,生成重調(diào)度方案,此時系統(tǒng)支撐服務(wù)會按照不同情況為虛擬系統(tǒng)提供不同的服務(wù)。
為孿生數(shù)據(jù)中心提供的數(shù)據(jù)處理方法,包括將物理系統(tǒng)數(shù)據(jù)轉(zhuǎn)化為虛擬系統(tǒng)數(shù)據(jù)的數(shù)據(jù)處理方法和將訂單數(shù)據(jù)轉(zhuǎn)化為任務(wù)數(shù)據(jù)的訂單處理方法:
(1)數(shù)據(jù)處理方法 將物理數(shù)據(jù)通過數(shù)據(jù)清洗、特征提取、數(shù)據(jù)分析等方式,處理為適合建立虛擬系統(tǒng)模型的虛擬系統(tǒng)數(shù)據(jù)。
(2)訂單處理方法 通過訂單整合為訂單分配工作站,如果商品庫存不足則生成相應(yīng)的補貨任務(wù),將工作站分配到的訂單拆分為相應(yīng)的揀貨任務(wù),根據(jù)系統(tǒng)需求確定揀選后的盤點任務(wù)。訂單處理完成后得到補貨、揀貨、盤點任務(wù),即可生成任務(wù)數(shù)據(jù)。
在多AGV系統(tǒng)中,采用本文所提基于數(shù)字孿生的集中式調(diào)度方法,根據(jù)當前情況預(yù)測系統(tǒng)未來狀態(tài),針對不斷到達的訂單進行實時調(diào)度,達到實時處理訂單并轉(zhuǎn)化成任務(wù),根據(jù)任務(wù)生成調(diào)度結(jié)果并轉(zhuǎn)化為AGV運行指令,最終完全控制AGV運行的效果。當物理系統(tǒng)中發(fā)生的擾動時進行重調(diào)度,解決調(diào)度計劃和實際運行存在偏差的問題。
首先,分析物理系統(tǒng)數(shù)據(jù),在AGV上安裝傳感器和控制系統(tǒng),為工作站配備人員操作系統(tǒng);其次,根據(jù)物理系統(tǒng)各實體的數(shù)據(jù)并分析系統(tǒng)作業(yè)流程,基于e-plant軟件建立如圖10所示的RMFS虛擬仿真系統(tǒng)。
假設(shè)系統(tǒng)中有3輛AGV,位于路塊[292,384,430]處,完成實時到達的兩波訂單數(shù)量分別為[3,5],到達時間分別為[0,10]。采用孿生數(shù)據(jù)中心的訂單處理方法將訂單數(shù)據(jù)轉(zhuǎn)化為任務(wù)數(shù)據(jù),第一波任務(wù)的貨架所在路塊為[272,409,433],工作站為[436,390,321];第二波任務(wù)的貨架所在路塊為[432,318,295,387,410],工作站為[275,436,390,436,367]。根據(jù)任務(wù)數(shù)據(jù)和AGV運行數(shù)據(jù),在虛擬系統(tǒng)中預(yù)測AGV未來的動向,并化解AGV間沖突,最終生成初始調(diào)度方案。任務(wù)分配方法采用就近分配規(guī)則,如圖11a所示,橫坐標表示時間,縱坐標表示路塊。在這一步生成的初始調(diào)度方案,AGV只從當前位置到貨架所在位置,再從貨架所在位置到工作站,在0 s只有任務(wù)[1,2,3]被分配。圖中豎線表示當前時間,豎線右側(cè)的甘特圖是預(yù)測的AGV運行情況,通過預(yù)測未來情況來化解AGV沖突。
人員操作完畢后,AGV將貨架運送回存儲區(qū)域。在調(diào)度中,物理系統(tǒng)將一些特定的實時數(shù)據(jù)通過數(shù)據(jù)傳輸協(xié)議和無線網(wǎng)通訊直接傳輸?shù)教摂M系統(tǒng),即人員揀貨時間和任務(wù)完成時間。根據(jù)圖11a所示的初始調(diào)度方案,AGV3所在的工作站工作人員最先完成任務(wù)的揀選,人員揀貨時間數(shù)據(jù)會直接傳輸?shù)教摂M系統(tǒng),在先前調(diào)度方案的基礎(chǔ)上,在25.5 s生成如圖11b所示的調(diào)度方案。圖中豎線左側(cè)甘特圖表示AGV過去的運行情況,右側(cè)甘特圖表示預(yù)測的情況。此時,AGV1即將進入工作站揀貨,AGV2的運行預(yù)測到了31 s ,AGV3的運行預(yù)測到了45 s。
當物理系統(tǒng)將任務(wù)完成時間傳輸?shù)教摂M系統(tǒng)后,該任務(wù)被視為已完成,根據(jù)任務(wù)數(shù)據(jù),將已經(jīng)從工作站離開的AGV作為可接取任務(wù)的AGV,再次生成初始調(diào)度方案。如圖11c所示,在45 s AGV3完成了任務(wù),此時雖然AGV1和AGV2上還有任務(wù)未完成,但是這兩輛AGV已經(jīng)離開工作站,離開時間分別是33 s和39 s,預(yù)測到達貨架存儲點的時間是53.5 s和66 s。因此,將AGV1和AGV2同空閑的AGV3一起視為可接取任務(wù)的AGV,集中為其進行任務(wù)分配,分配后AGV運行情況的甘特圖如圖11c所示。通過為現(xiàn)有AGV集中分配任務(wù),能夠提前預(yù)測可能出現(xiàn)的沖突并處理,AGV可以按照預(yù)測結(jié)果提前避讓,減少了不必要的啟停。
在沒有其他擾動的情況下,按照本文所提生成初始調(diào)度方案的方法,對這8個任務(wù)進行集中式調(diào)度,最終的調(diào)度結(jié)果如圖11d所示,完成所有任務(wù)的時間是173 s。
在集中式調(diào)度中,物理系統(tǒng)的數(shù)據(jù)通過數(shù)據(jù)傳輸協(xié)議和無線網(wǎng)通訊傳輸?shù)綄\生數(shù)據(jù)中心,孿生數(shù)據(jù)中心通過比對確定是否發(fā)生擾動,如果發(fā)生擾動,則根據(jù)重調(diào)度規(guī)則對擾動進行處理。以圖11c所示的初始調(diào)度方案為例,如果在73 s發(fā)現(xiàn)AGV1的運行情況和調(diào)度計劃不符,其未按時到達路塊343,而是在74 s才到達,則需要生成重調(diào)度方案。所生成的重調(diào)度方案如圖12所示,其中豎線表示重調(diào)度發(fā)生的時間,即系統(tǒng)運行的當前時間。
這些生成的初始調(diào)度方案和重調(diào)度方案均需利用虛擬系統(tǒng)模型進行仿真,通過仿真調(diào)度方案得到仿真結(jié)果數(shù)據(jù),傳輸?shù)綄\生數(shù)據(jù)中心生成指令,指導(dǎo)物理系統(tǒng)中的AGV運行和人員操作。
為了驗證集中式調(diào)度方法在訂單數(shù)量較多時的表現(xiàn),隨機生成6輛AGV初始位置和訂單數(shù)據(jù),訂單按照5個波次到達,每個波次的任務(wù)數(shù)量分別為[6,10,8,14,12],共50個任務(wù)。采用所提方法進行調(diào)度,最終結(jié)果的甘特圖如圖13所示,完成時間為721 s。從圖中可以證明,本文方法能夠完成大量任務(wù)的集中式調(diào)度并生成無沖突的調(diào)度方案,為物理系統(tǒng)中的人員和AGV提供調(diào)度指令,保證物理系統(tǒng)無誤運行。
為了驗證本文所提集中式調(diào)度方法的調(diào)度效果,將集中式調(diào)度與現(xiàn)在常用的分布式調(diào)度方法進行對比。圖14所示為圖13案例中的30次重復(fù)實驗下,采用兩種調(diào)度方法獲得的調(diào)度方案完成時間分布情況??梢钥闯?,雖然集中式調(diào)度方法獲得的完成時間最小值大于分布式調(diào)度方法,但是多次重復(fù)實驗中,其總體上優(yōu)于分布式調(diào)度方法,找到較小完成時間調(diào)度方案的幾率更大,兩者完成時間的平均值分別為732.7 s,734.8 s。
在實際運行中,因為AGV數(shù)量多,任務(wù)繁忙,RMFS內(nèi)沖突嚴重,所以針對訂單數(shù)量較多且系統(tǒng)內(nèi)沖突嚴重的情況進行實驗,30次實驗結(jié)果如表1所示。從表中可以看出,集中式調(diào)度和分布式調(diào)度這兩種方法都能得到很穩(wěn)定的調(diào)度結(jié)果,多次實驗的完成時間保持不變。然而相比分布式調(diào)度,集中式調(diào)度完成任務(wù)的時間更短,節(jié)約時間14.4%,而且AGV的運行總路程和總啟停次數(shù)更少,這意味著采用集中式調(diào)度方法能夠顯著提升系統(tǒng)效率,降低AGV的運行長度和啟停次數(shù),減少完成任務(wù)的能耗。
表1 集中式調(diào)度和分布式調(diào)度對比(沖突嚴重)
本文提出一種基于數(shù)字孿生的集中式調(diào)度方法。建立了以物理系統(tǒng)、虛擬系統(tǒng)、孿生數(shù)據(jù)中心、系統(tǒng)支撐服務(wù)為核心的數(shù)字孿生模型;確定了物理系統(tǒng)接收指令和采集數(shù)據(jù)機制,包括AGV接收運行指令并利用傳感器等傳輸數(shù)據(jù),人員接收操作指令并利用操作系統(tǒng)傳遞數(shù)據(jù);建立了虛擬系統(tǒng)方案生成與仿真機制,包括虛擬系統(tǒng)模型、實時生成和調(diào)整調(diào)度方案及仿真調(diào)度方案3部分;提出孿生數(shù)據(jù)中心數(shù)據(jù)處理和對比機制,用于存儲數(shù)據(jù)、處理數(shù)據(jù)、對比數(shù)據(jù),連接物理系統(tǒng)和虛擬系統(tǒng)。利用系統(tǒng)支撐服務(wù)為各模塊提供支撐,包括物理系統(tǒng)內(nèi)的人員操作系統(tǒng)和AGV控制系統(tǒng)、虛擬系統(tǒng)內(nèi)的模型搭建方法和方案生成方法、孿生數(shù)據(jù)中心內(nèi)的數(shù)據(jù)處理方法等。與現(xiàn)有調(diào)度方法相比,基于數(shù)字孿生的集中式調(diào)度方法能夠及時響應(yīng)物理系統(tǒng)內(nèi)的變化,通過維持虛擬系統(tǒng)和物理系統(tǒng)的一致性,保證虛擬系統(tǒng)在物理系統(tǒng)發(fā)生變化時實時調(diào)整調(diào)度方案。因為虛擬系統(tǒng)能夠?qū)崟r反映物理系統(tǒng)狀態(tài),所以可以對物理系統(tǒng)的未來變化進行預(yù)測,借助提前預(yù)測的方式避免AGV運行過程發(fā)生沖突,集中優(yōu)化系統(tǒng)內(nèi)的AGV運行,提升系統(tǒng)效率。實驗證明,利用本文方法可以根據(jù)當前系統(tǒng)狀態(tài)預(yù)測未來AGV動向,實現(xiàn)訂單實時到達下的RMFS實時調(diào)度。在物理系統(tǒng)和調(diào)度計劃有偏差的情況下,針對物理系統(tǒng)內(nèi)產(chǎn)生的擾動,能夠按照重調(diào)度規(guī)則進行處理,生成重調(diào)度方案并更改物理系統(tǒng)的指令,使物理系統(tǒng)繼續(xù)運行并避免沖突和死鎖。通過對比集中式調(diào)度和分布式調(diào)度兩種調(diào)度方法在大量訂單實時到達情況下的表現(xiàn),證明集中式調(diào)度能夠提升系統(tǒng)效率,獲得更好和更穩(wěn)定的調(diào)度結(jié)果,而且在系統(tǒng)內(nèi)沖突嚴重時,集中式調(diào)度能夠節(jié)約14.4%的完成時間。下一步將圍繞快速生成方案的調(diào)度優(yōu)化方法展開研究,加快數(shù)字孿生模型的落地實施。