本發(fā)明涉及一種基于a2c強(qiáng)化學(xué)習(xí)的異構(gòu)設(shè)備維修任務(wù)分配系統(tǒng)及方法,屬于強(qiáng)化學(xué)習(xí),應(yīng)用于異構(gòu)化設(shè)備維修任務(wù)與工作臺(tái)間的分配環(huán)境。
背景技術(shù):
1、企業(yè)對(duì)設(shè)備可靠性、運(yùn)維效率和成本控制的要求日益嚴(yán)苛,現(xiàn)代工業(yè)設(shè)備也朝著高復(fù)雜度、高集成度和高自動(dòng)化的方向轉(zhuǎn)型,在工業(yè)制造背景快速演變的當(dāng)下,設(shè)備維護(hù)過(guò)程不僅要考慮任務(wù)分配的時(shí)間約束,也要考慮工作臺(tái)的實(shí)際工作效率、備件儲(chǔ)備情況等多維度的優(yōu)化目標(biāo)。傳統(tǒng)的精確式方法如分支限界法已難以滿足如此復(fù)雜的需求,而隨著ai技術(shù)的進(jìn)步為實(shí)時(shí)決策提供了算力支持,這就促使行業(yè)開始積極探索強(qiáng)化學(xué)習(xí)在設(shè)備維修領(lǐng)域的應(yīng)用。
2、設(shè)備維修問(wèn)題的核心在于如何在有限的時(shí)間、資源和成本約束下,制定最優(yōu)的維修策略以最大化設(shè)備可靠性或最小化運(yùn)維成本。目前在設(shè)備維修問(wèn)題上主要采用如下兩種方法:一是采用精確方法保證找到設(shè)備維修問(wèn)題的最優(yōu)解,但通常因極高的計(jì)算復(fù)雜度而無(wú)法應(yīng)用于大規(guī)模問(wèn)題,如采用動(dòng)態(tài)規(guī)劃方法解決0-1背包問(wèn)題,雖然存儲(chǔ)了子問(wèn)題的解并且避免了重復(fù)計(jì)算,但當(dāng)背包容量過(guò)大時(shí),會(huì)出現(xiàn)維度災(zāi)難問(wèn)題;二是采用啟發(fā)式方法,通過(guò)近似策略在合理時(shí)間內(nèi)找到可行解,但在參數(shù)選擇方面過(guò)于敏感,參數(shù)的選擇會(huì)顯著影響算力。簡(jiǎn)而言之,精確方法和啟發(fā)式方法可以更快地解決問(wèn)題,但會(huì)產(chǎn)生可擴(kuò)展性和靈活性較差的次優(yōu)解決方案。
3、因此,在現(xiàn)有的異構(gòu)設(shè)備維修任務(wù)分配中,如何提升設(shè)備維修任務(wù)分配的準(zhǔn)確性已經(jīng)成為亟待解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的是針對(duì)現(xiàn)有的異構(gòu)設(shè)備維修任務(wù)分配中,提升設(shè)備維修任務(wù)分配的準(zhǔn)確性的技術(shù)問(wèn)題,提出一種基于a2c強(qiáng)化學(xué)習(xí)的異構(gòu)設(shè)備維修任務(wù)分配系統(tǒng)及方法。
2、本發(fā)明的工作流程為:本發(fā)明的a2c-ga混合模型采用actor-critic架構(gòu)與遺傳算法協(xié)同優(yōu)化的方式進(jìn)行。首先,服務(wù)器端初始化包含多個(gè)超參數(shù)變體的a2c智能體種群,將工作臺(tái)數(shù)據(jù)和任務(wù)數(shù)據(jù)的特征向量提取并拼接為狀態(tài)向量,為網(wǎng)絡(luò)動(dòng)作選擇提供依據(jù);其次,各a2c智能體通過(guò)當(dāng)前任務(wù)-工作臺(tái)狀態(tài),結(jié)合優(yōu)勢(shì)函數(shù)選取動(dòng)作并更新-環(huán)境狀態(tài),同時(shí)計(jì)算即時(shí)獎(jiǎng)勵(lì)值;在訓(xùn)練過(guò)程中,critic網(wǎng)絡(luò)評(píng)估actor網(wǎng)絡(luò)決策優(yōu)劣并反饋策略更新,同時(shí)遺傳算法模塊定期介入智能體參數(shù)優(yōu)化階段:通過(guò)代際適應(yīng)度評(píng)估篩選最優(yōu)a2c智能體,對(duì)非最優(yōu)a2c智能體實(shí)施超參數(shù)交叉變異,具體包括學(xué)習(xí)率插值調(diào)整、探索率擾動(dòng)和折扣因子優(yōu)化,并將優(yōu)良參數(shù)組合擴(kuò)散至所有a2c智能體中。通過(guò)強(qiáng)化學(xué)習(xí)與進(jìn)化算法的雙重優(yōu)化機(jī)制,重復(fù)狀態(tài)交互-策略評(píng)估-參數(shù)進(jìn)化循環(huán),直至模型收斂到最優(yōu)分配方法。
3、本發(fā)明的目的是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的:
4、本發(fā)明公開的一種基于a2c強(qiáng)化學(xué)習(xí)的異構(gòu)設(shè)備維修任務(wù)分配方法,應(yīng)用于包含多個(gè)服務(wù)器和多個(gè)客戶端的節(jié)點(diǎn)上,包括以下步驟:
5、步驟1:服務(wù)器端建立用于工作臺(tái)-任務(wù)狀態(tài)的異構(gòu)設(shè)備維修任務(wù)分配的a2c-ga混合模型,并為模型配置超參數(shù);客戶端對(duì)服務(wù)器端的工作臺(tái)-任務(wù)狀態(tài)進(jìn)行參數(shù)初始化;
6、步驟1.1:服務(wù)器端建立由工作臺(tái)狀態(tài)與任務(wù)狀態(tài)組成的工作臺(tái)-任務(wù)狀態(tài)的異構(gòu)設(shè)備維修任務(wù)分配的a2c模型;
7、步驟1.2:服務(wù)器端自動(dòng)為a2c模型配置超參數(shù)并進(jìn)行初始化,同時(shí)初始化遺傳算法參數(shù);
8、步驟1.2.1:服務(wù)器端設(shè)定強(qiáng)化學(xué)習(xí)默認(rèn)核心參數(shù),其中包括折扣因子、actor網(wǎng)絡(luò)學(xué)習(xí)率、critic網(wǎng)絡(luò)學(xué)習(xí)率;
9、步驟1.2.2:服務(wù)器端設(shè)定默認(rèn)訓(xùn)練過(guò)程參數(shù),其中包括訓(xùn)練回合數(shù)、隱藏層維度、批次大小、記憶容量和收斂閾值;
10、步驟1.2.3:服務(wù)器端設(shè)定遺傳方法參數(shù),其中包括種群規(guī)模、代際間隔、交叉概率和變異概率;利用a2c模型構(gòu)建單一a2c智能體;將單一a2c智能體按閾值數(shù)量進(jìn)行組成形成a2c智能體集;服務(wù)器端初始化a2c智能體;
11、步驟1.3:客戶端對(duì)服務(wù)器端的工作臺(tái)-任務(wù)狀態(tài)進(jìn)行參數(shù)初始化;具體的,為工作臺(tái)參數(shù)θg和任務(wù)參數(shù)θr分別配置工作臺(tái)數(shù)量和任務(wù)數(shù)量
12、步驟1.4:利用工作臺(tái)參數(shù)θg和任務(wù)參數(shù)θr構(gòu)建服務(wù)端的工作臺(tái)-任務(wù)狀態(tài)參數(shù){θg,θr};
13、步驟1.5:服務(wù)器端利用工作臺(tái)-任務(wù)狀態(tài)參數(shù)構(gòu)建工作臺(tái)-任務(wù)環(huán)境;
14、步驟1.5.1:服務(wù)器端對(duì)由初始化工作臺(tái)狀態(tài)、初始化任務(wù)狀態(tài)和初始化調(diào)度記錄組成的環(huán)境參數(shù)進(jìn)行初始化;
15、步驟1.5.2:服務(wù)器端對(duì)由重置所有工作臺(tái)狀態(tài)、重置所有任務(wù)狀態(tài)和清空調(diào)度記錄組成的環(huán)境重置方法進(jìn)行設(shè)定;
16、步驟1.5.3:利用任務(wù)狀態(tài)與工作臺(tái)狀態(tài)進(jìn)行狀態(tài)提取與狀態(tài)空間的首尾拼接形成當(dāng)前工作臺(tái)-任務(wù)狀態(tài)空間ρx;
17、步驟1.5.3.1:構(gòu)建任務(wù)狀態(tài)空間ρr和工作臺(tái)狀態(tài)空間ρg,設(shè)定任務(wù)狀態(tài)為未開始、正在進(jìn)行和已結(jié)束;設(shè)定工作臺(tái)狀態(tài)分為空閑和正在工作;
18、步驟1.5.3.2:利用任務(wù)狀態(tài)與工作臺(tái)狀態(tài)進(jìn)行狀態(tài)空間的首尾拼接,形成當(dāng)前工作臺(tái)-任務(wù)狀態(tài)空間ρx;
19、步驟1.6:服務(wù)器端通過(guò)ε-greedy方法進(jìn)行任務(wù)與工作臺(tái)的分配,更新工作臺(tái)-任務(wù)狀態(tài),進(jìn)而獲取即時(shí)獎(jiǎng)勵(lì);
20、步驟1.6.1:在當(dāng)前的工作臺(tái)-任務(wù)狀態(tài)空間ρx下,將設(shè)定為任務(wù)分配集的數(shù)量;利用任務(wù)-工作臺(tái)的任務(wù)分配概率分布π(a|s)對(duì)工作臺(tái)-任務(wù)對(duì)進(jìn)行選??;
21、步驟1.6.2:通過(guò)ε-greedy方法進(jìn)行任務(wù)分配,在每個(gè)時(shí)間步中,以ε的概率進(jìn)行隨機(jī)探索,即選擇一個(gè)隨機(jī)動(dòng)作;以(1-ε)的概率選擇當(dāng)前任務(wù)分配集輸出的最大概率動(dòng)作,即actor網(wǎng)絡(luò)的確定性輸出。
22、步驟1.6.3:利用任務(wù)實(shí)際處理時(shí)間推進(jìn)仿真時(shí)間,利用工作臺(tái)-任務(wù)對(duì)更新工作臺(tái)-任務(wù)狀態(tài);
23、步驟1.6.4:利用更新的工作臺(tái)-任務(wù)狀態(tài)獲取即時(shí)獎(jiǎng)勵(lì);
24、步驟2:服務(wù)器端利用任務(wù)分配集的動(dòng)作狀態(tài)交互評(píng)估對(duì)actor網(wǎng)絡(luò)和critic網(wǎng)絡(luò)進(jìn)行更新,并利用actor網(wǎng)絡(luò)和critic網(wǎng)絡(luò)梯度損失對(duì)a2c模型進(jìn)行參數(shù)更新;
25、步驟2.1:構(gòu)建由actor網(wǎng)絡(luò)和critic網(wǎng)絡(luò)組成的a2c模型;服務(wù)器端通過(guò)actor網(wǎng)絡(luò)模型生成任務(wù)分配集并將分配后的工作臺(tái)-任務(wù)狀態(tài)反饋給critic網(wǎng)絡(luò);
26、步驟2.1.1:構(gòu)建由狀態(tài)維度動(dòng)作維度輸入層和輸出層組成的actor網(wǎng)絡(luò);
27、步驟2.1.2:服務(wù)器端利用輸入層的前向傳播進(jìn)行特征提取,獲得如式(1)所示的任務(wù)分配集的概率分布,并對(duì)概率分布進(jìn)行歸一化;
28、h=relu(w2·relu(w1s+b1)+b2),
29、π(a|s)=softmax(w3h+b3)????????????????????????????????????????(1)
30、其中,s是工作臺(tái)-任務(wù)狀態(tài)空間ρx,w1和w2是權(quán)重矩陣,b1和b2是偏置項(xiàng);π(a|s)是任務(wù)分配集函數(shù),表示在狀態(tài)s下選擇動(dòng)作a的概率,w3,b3是輸出層的權(quán)重和偏置;
31、步驟2.1.3:利用π(a|s)對(duì)任務(wù)分配進(jìn)行選擇,獲取工作臺(tái)-任務(wù)分配狀態(tài);
32、步驟2.2:服務(wù)器端通過(guò)critic網(wǎng)絡(luò)模型,對(duì)actor網(wǎng)絡(luò)的工作臺(tái)-任務(wù)分配狀態(tài)價(jià)值進(jìn)行評(píng)估并反饋給actor網(wǎng)絡(luò);
33、步驟2.2.1:構(gòu)建由狀態(tài)維度動(dòng)作維度輸入層和輸出層組成的critic網(wǎng)絡(luò);
34、步驟2.2.2:critic網(wǎng)絡(luò)利用式(3)對(duì)工作臺(tái)-任務(wù)分配狀態(tài)進(jìn)行評(píng)估;
35、a(s,a)=r+γv(s′)-v(s)???????????????????(3)
36、其中,r為即時(shí)獎(jiǎng)勵(lì),即執(zhí)行動(dòng)作a后獲得的獎(jiǎng)勵(lì),γ為折扣因子,通常γ取0.9~0.99,用于減少未來(lái)獎(jiǎng)勵(lì)的影響,v(s)為critic網(wǎng)絡(luò)對(duì)當(dāng)前狀態(tài)價(jià)值的估值,v(s′)為critic網(wǎng)絡(luò)對(duì)下一狀態(tài)價(jià)值的估值;
37、步驟2.3:服務(wù)器端利用如式(4)所示的actor網(wǎng)絡(luò)和critic網(wǎng)絡(luò)梯度損失對(duì)a2c模型參數(shù)進(jìn)行優(yōu)化;
38、
39、其中,v(si)為critic網(wǎng)絡(luò)對(duì)當(dāng)前狀態(tài)價(jià)值的估值,ri為即時(shí)獎(jiǎng)勵(lì),γ為折扣因子,si‘為critic網(wǎng)絡(luò)對(duì)下一個(gè)狀態(tài)價(jià)值的估值。
40、步驟2.4:服務(wù)器端對(duì)緩沖區(qū)數(shù)據(jù)進(jìn)行采樣,使用adam優(yōu)化器反向傳播更新a2c模型參數(shù)。
41、步驟2.5:服務(wù)器端通過(guò)經(jīng)驗(yàn)存儲(chǔ)方法將由狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì)、下一狀態(tài)和終止標(biāo)志組成的交互數(shù)據(jù)存入經(jīng)驗(yàn)回放緩沖區(qū);
42、步驟2.6:服務(wù)器端的各個(gè)a2c智能體共享經(jīng)驗(yàn)回放緩沖區(qū)的所有信息,篩選適用的a2c智能體的參數(shù);
43、步驟2.6.1:服務(wù)器端的a2c智能體集共享經(jīng)驗(yàn)回放緩沖區(qū)的交互數(shù)據(jù),并執(zhí)行a2c智能體參數(shù)交互;
44、步驟2.6.2:設(shè)定代際間隔回合數(shù),利用回合平均獎(jiǎng)勵(lì)獲取a2c智能體的適應(yīng)度;
45、步驟2.6.3:設(shè)定選取適應(yīng)度閾值,對(duì)a2c智能體的適應(yīng)度進(jìn)行遞減排序;對(duì)適應(yīng)度大于適應(yīng)度閾值的a2c智能體的參數(shù)封存至下一回合;
46、步驟2.6.4:設(shè)定用于平衡探索獲取傾向于適用動(dòng)作的探索率為ε,將適應(yīng)度小于適應(yīng)度閾值的a2c智能體的參數(shù)通過(guò)線性調(diào)整方式向大于適應(yīng)度閾值的a2c智能體的參數(shù)進(jìn)行靠攏,直至探索率ε收斂;
47、步驟2.6.5:將適應(yīng)度大于適應(yīng)度閾值的a2c智能體存儲(chǔ)為容錯(cuò)性能回退的快照;將快照用于迭代回合對(duì)a2c智能體參數(shù)的線性調(diào)整;
48、步驟3:以迭代循環(huán)的方式執(zhí)行步驟1和步驟2,直到適應(yīng)度提升小于1%時(shí)為止;
49、步驟4:服務(wù)器端將任務(wù)分配集和任務(wù)完成的總時(shí)間通過(guò)客戶端進(jìn)行可視化輸出;
50、本發(fā)明公開的一種基于a2c強(qiáng)化學(xué)習(xí)的異構(gòu)設(shè)備維修任務(wù)分配系統(tǒng),用于實(shí)現(xiàn)上述方法。本發(fā)明公開的一種基于a2c強(qiáng)化學(xué)習(xí)的異構(gòu)設(shè)備維修任務(wù)分配系統(tǒng),包括任務(wù)管理模塊、調(diào)度優(yōu)化模塊、資源管理模塊和決策支持模塊。
51、所述任務(wù)管理模塊,用于實(shí)時(shí)監(jiān)控和調(diào)整維修任務(wù)的生命周期狀態(tài),通過(guò)智能狀態(tài)機(jī)機(jī)制,根據(jù)設(shè)備實(shí)時(shí)運(yùn)行數(shù)據(jù)、故障嚴(yán)重程度以及資源可用性對(duì)任務(wù)狀態(tài)進(jìn)行動(dòng)態(tài)標(biāo)記;將作為調(diào)度優(yōu)化模塊的輸入;
52、所述調(diào)度優(yōu)化模塊,用于基于a2c-ga混合強(qiáng)化學(xué)習(xí)算法實(shí)現(xiàn)維修任務(wù)的智能分配決策,通過(guò)實(shí)時(shí)分析工作臺(tái)狀態(tài)、任務(wù)優(yōu)先級(jí)和資源約束條件,動(dòng)態(tài)生成任務(wù)分配集;將作為資源管理模塊的輸入;
53、所述資源管理模塊,用于獲取維修任務(wù)所需的備件種類和數(shù)量,自動(dòng)扣減虛擬庫(kù)存;將作為決策支持模塊的輸入;
54、所述決策支持模塊,用于將任務(wù)分配集、即時(shí)獎(jiǎng)勵(lì)趨勢(shì)圖和任務(wù)完成的總時(shí)間進(jìn)行可視化輸出;
55、與現(xiàn)有技術(shù)相比,具有如下有益效果:
56、1、多維度狀態(tài)建模:將工作臺(tái)狀態(tài)和維修任務(wù)狀態(tài)動(dòng)態(tài)融合,由工作臺(tái)狀態(tài)向量和維修任務(wù)狀態(tài)向量共同組成狀態(tài)向量。
57、2、策略梯度優(yōu)化:本實(shí)驗(yàn)在actor網(wǎng)絡(luò)輸出層通過(guò)隱式實(shí)現(xiàn)掩碼避免低效服務(wù)臺(tái)的無(wú)效探索;計(jì)算優(yōu)勢(shì)函數(shù)時(shí),critic網(wǎng)絡(luò)隱含學(xué)習(xí)服務(wù)臺(tái)效率差異的價(jià)值評(píng)估,引導(dǎo)actor優(yōu)先分配高效服務(wù)臺(tái)。
58、3、混合獎(jiǎng)勵(lì)機(jī)制:本實(shí)驗(yàn)的獎(jiǎng)勵(lì)函數(shù)結(jié)合任務(wù)完成獎(jiǎng)勵(lì)和時(shí)間懲罰,更加貼合實(shí)際生產(chǎn)情況,平衡了維修效率過(guò)高和過(guò)低的情況;同時(shí)設(shè)置全局時(shí)間懲罰與服務(wù)臺(tái)利用率負(fù)相關(guān),進(jìn)而使高效服務(wù)臺(tái)分配越多,總時(shí)間懲罰越小。