本發(fā)明具體涉及一種考慮運(yùn)輸時(shí)間柔性作業(yè)車間的調(diào)度方法,具體涉及一種融合多重注意力機(jī)制的異構(gòu)圖神經(jīng)網(wǎng)絡(luò)調(diào)度優(yōu)化方法,屬于工業(yè)智能仿真。
背景技術(shù):
1、隨著自動(dòng)化技術(shù)在企業(yè)中的廣泛應(yīng)用,自動(dòng)導(dǎo)引車(agv)已成為智能工廠中不可或缺的運(yùn)輸設(shè)備,agv不僅能夠?qū)崿F(xiàn)工件在不同加工環(huán)節(jié)之間的高效、精準(zhǔn)運(yùn)輸,還能通過與生產(chǎn)系統(tǒng)的無縫集成,實(shí)現(xiàn)生產(chǎn)過程的自動(dòng)化和智能化。與傳統(tǒng)的人力或固定運(yùn)輸工具相比,agv具備靈活性高、調(diào)度智能、實(shí)時(shí)性強(qiáng)等優(yōu)點(diǎn),能夠根據(jù)生產(chǎn)計(jì)劃動(dòng)態(tài)調(diào)整路徑和任務(wù),提升生產(chǎn)效率和柔性制造能力。此外,agv的應(yīng)用還能有效減少人為操作帶來的誤差和安全隱患,提高生產(chǎn)過程的安全性和穩(wěn)定性。
2、當(dāng)前求解帶有自動(dòng)引導(dǎo)車輛的柔性作業(yè)車間調(diào)度問題(flexible?workshopscheduling?problem?forautomated?guidedvehicles,fjsp-agv)的主要方法有精確方法和近似方法兩種類別。精確方法包括以混合整數(shù)線性規(guī)劃、拉格朗日松弛法和分解方法為代表的數(shù)學(xué)規(guī)劃方法,以及分支界定法。精確方法通過將調(diào)度問題化為多個(gè)約束組合來進(jìn)行求解,導(dǎo)致其在中大規(guī)模案例上運(yùn)行時(shí)間很長,甚至無法得出解。近似方法包括元啟發(fā)式算法,深度強(qiáng)化學(xué)習(xí)算法等。元啟發(fā)式算法包括遺傳算法、狼群算法、禁忌搜索算法以及人工蜂群算法等,盡管這類算法在一些案例上表現(xiàn)優(yōu)異,但是通常需要手動(dòng)調(diào)整參數(shù)并且需要大量的迭代來獲得最佳的解決方案,所以存在求解質(zhì)量不穩(wěn)定、容易陷入局部最優(yōu)、大規(guī)模用例求解效率低和魯棒性不強(qiáng)等問題。同時(shí),當(dāng)案例發(fā)生變化時(shí),傳統(tǒng)的元啟發(fā)式算法只能重新進(jìn)行計(jì)算調(diào)度,無法達(dá)到實(shí)時(shí)響應(yīng)的目標(biāo)。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于克服背景技術(shù)中的不足,提供一種考慮運(yùn)輸時(shí)間柔性作業(yè)車間的調(diào)度方法,解決考慮自動(dòng)導(dǎo)引車運(yùn)輸時(shí)間的柔性作業(yè)車間調(diào)度技術(shù)問題。
2、為達(dá)到上述目的,本發(fā)明所采用的技術(shù)方案是:
3、第一方面,提供一種考慮運(yùn)輸時(shí)間柔性作業(yè)車間調(diào)度方法,包括:
4、根據(jù)當(dāng)前車間環(huán)境構(gòu)建出對(duì)應(yīng)的異構(gòu)圖模型;
5、基于工序、機(jī)器以及agv之間的關(guān)系對(duì)異構(gòu)圖模型進(jìn)行特征提取,獲得節(jié)點(diǎn)特征以及聯(lián)合特征;
6、將節(jié)點(diǎn)特征輸入多重注意力網(wǎng)絡(luò)進(jìn)行g(shù)at編碼,獲得新特征;
7、將新特征與聯(lián)合特征結(jié)合,使用訓(xùn)練好網(wǎng)絡(luò)參數(shù)的決策模塊中的用于決策的actor網(wǎng)絡(luò)進(jìn)行mlp解碼,得到對(duì)應(yīng)的動(dòng)作及其概率分布,選擇概率最高的動(dòng)作并執(zhí)行;
8、根據(jù)執(zhí)行的動(dòng)作更新當(dāng)前車間環(huán)境,重復(fù)上述步驟迭代至完成所有調(diào)度流程。
9、結(jié)合第一方面,進(jìn)一步的,所述決策模塊包括actor網(wǎng)絡(luò)和用于評(píng)估actor網(wǎng)絡(luò)所選動(dòng)作質(zhì)量的critic網(wǎng)絡(luò),決策模塊的訓(xùn)練過程包括:
10、將與車間動(dòng)作相關(guān)的訓(xùn)練數(shù)據(jù)輸入到actor網(wǎng)絡(luò)中,通過gat編碼及mlp解碼,獲得每一個(gè)動(dòng)作的概率分布;
11、基于動(dòng)作抽樣策略從動(dòng)作的概率分布中選取一個(gè)動(dòng)作,獲得該動(dòng)作獎(jiǎng)勵(lì)并進(jìn)行狀態(tài)轉(zhuǎn)移,將該動(dòng)作元組放入經(jīng)驗(yàn)回放池;
12、當(dāng)經(jīng)驗(yàn)回放池中的動(dòng)作元組數(shù)量達(dá)到預(yù)設(shè)值,從經(jīng)驗(yàn)回放池中隨機(jī)抽取動(dòng)作元組對(duì)critic網(wǎng)絡(luò)參數(shù)及actor網(wǎng)絡(luò)參數(shù)進(jìn)行更新;
13、將更新后的actor網(wǎng)絡(luò)參數(shù)賦給用于決策的actor網(wǎng)絡(luò),獲得訓(xùn)練好的用于決策的actor網(wǎng)絡(luò)。
14、進(jìn)一步的,動(dòng)作的概率分布如下式所示:
15、
16、式中,πθ(at∣st)表示在狀態(tài)st選擇動(dòng)作at的概率,μ(at|st)表示動(dòng)作at對(duì)應(yīng)一個(gè)標(biāo)量,其中分別表示第l層工序、機(jī)器、agv以及全局的特征,表示工序-機(jī)器的聯(lián)合特征,表示工序-agv的聯(lián)合特征,mlpθ表示多層感知機(jī),μ(bt|st)表示動(dòng)作bt對(duì)應(yīng)一個(gè)標(biāo)量;表示動(dòng)作空間集合,||表示合并連接操作。
17、進(jìn)一步的,通過梯度下降、自適應(yīng)學(xué)習(xí)率adam算法對(duì)critic網(wǎng)絡(luò)參數(shù)及actor網(wǎng)絡(luò)參數(shù)進(jìn)行更新,如下式所示:
18、loss(θ,φ)=cplclip(θ)+cvlmse(φ)+cele(θ),
19、式中,loss(θ,φ)表示策略函數(shù)的總損失,θ和分別為actor網(wǎng)絡(luò)與critic網(wǎng)絡(luò)的參數(shù),lclip(θ)為近端比率損失,lmse(φ)為價(jià)值函數(shù)損失,le(θ)為熵?fù)p失,cp、cv和ce分別為近端比率裁剪損失系數(shù)、價(jià)值函數(shù)損失系數(shù)和熵?fù)p失系數(shù)。
20、進(jìn)一步的,所述節(jié)點(diǎn)特征包括:工序節(jié)點(diǎn)特征、機(jī)器節(jié)點(diǎn)特征和agv節(jié)點(diǎn)特征;所述聯(lián)合特征包括:工序-機(jī)器對(duì)特征,工序-agv對(duì)特征。
21、進(jìn)一步的,所述多重注意力網(wǎng)絡(luò)將輸入的節(jié)點(diǎn)特征分類通過工序信息注意力模塊、機(jī)器信息注意力模塊或agv信息注意力模塊進(jìn)行處理,獲得新特征。
22、進(jìn)一步的,所述工序信息注意力模塊用于執(zhí)行以下步驟:
23、對(duì)于輸入的節(jié)點(diǎn)特征,通過計(jì)算當(dāng)前工序與其相連工序的注意力系數(shù),采用softmax函數(shù)對(duì)注意力系數(shù)進(jìn)行歸一化處理,得到歸一化注意力系數(shù);
24、根據(jù)歸一化注意力系數(shù),輸出當(dāng)前工序與其前后工序之間的關(guān)聯(lián)程度,計(jì)算公式如下:
25、
26、式中,表示工序信息注意力模塊輸出的新特征,αi,j,p表示歸一化注意力系數(shù),σ表示非線性激活函數(shù),w表示線性變換,表示當(dāng)前工序的輸入特征,oip表示第i個(gè)工件的第p道工序,p=j(luò)-1表示參數(shù)p從j-1開始。
27、進(jìn)一步的,所述機(jī)器信息注意力模塊用于執(zhí)行以下步驟:
28、對(duì)工序信息注意力模塊中輸入的節(jié)點(diǎn)特征進(jìn)行過濾;
29、分別對(duì)機(jī)器信息注意力模塊中輸入的特征屬性,及過濾后的節(jié)點(diǎn)特征進(jìn)行預(yù)處理,然后拼接,獲得當(dāng)前機(jī)器與其他機(jī)器的競(jìng)爭強(qiáng)度;
30、根據(jù)當(dāng)前機(jī)器與其他機(jī)器的競(jìng)爭強(qiáng)度,計(jì)算機(jī)器信息注意力系數(shù);
31、對(duì)機(jī)器信息注意力系數(shù)進(jìn)行歸一化處理,輸出處理后的機(jī)器特征;
32、所述機(jī)器信息注意力系數(shù)的計(jì)算公式如下:
33、
34、式中,表示機(jī)器信息注意力系數(shù),均為權(quán)重矩陣,是一個(gè)線性變換,分別為機(jī)器k、機(jī)器q的輸入特征,表示競(jìng)爭加工工序mk和mq之間競(jìng)爭力的度量,表示機(jī)器競(jìng)爭加工工序mk和mq的集合。
35、進(jìn)一步的,所述agv信息注意力模塊用于執(zhí)行以下步驟:
36、對(duì)工序信息注意力模塊中輸入的節(jié)點(diǎn)特征進(jìn)行過濾;
37、分別對(duì)agv信息注意力模塊中輸入的節(jié)點(diǎn)特征,及過濾后的節(jié)點(diǎn)特征進(jìn)行預(yù)處理,然后拼接,獲得當(dāng)前agv與其他agv的競(jìng)爭強(qiáng)度;
38、根據(jù)當(dāng)前agv與其他agv的競(jìng)爭強(qiáng)度,計(jì)算agv信息注意力系數(shù);
39、對(duì)agv信息注意力系數(shù)進(jìn)行歸一化處理,輸出多臺(tái)agv競(jìng)爭運(yùn)輸未完成加工的工件;
40、所述agv信息注意力系數(shù)的計(jì)算公式如下:
41、
42、式中,表示agv信息注意力系數(shù),均為權(quán)重矩陣,是一個(gè)線性變換,為自動(dòng)導(dǎo)引車ak與aq競(jìng)爭運(yùn)輸工件的集合,表示agv之間競(jìng)爭力的度量,分別表示第q個(gè)agv和第k個(gè)agv的輸入特征,leakyrelu表示一種激活函數(shù)。
43、第二方面,本發(fā)明提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí),實(shí)現(xiàn)上述任一所述的一種考慮運(yùn)輸時(shí)間柔性作業(yè)車間調(diào)度方法。
44、與現(xiàn)有技術(shù)相比,本發(fā)明所達(dá)到的有益效果:
45、本發(fā)明提供的一種考慮運(yùn)輸時(shí)間柔性作業(yè)車間的調(diào)度方法,利用融合多重注意力機(jī)制的異構(gòu)圖神經(jīng)網(wǎng)絡(luò),在考慮工序、機(jī)器以及agv各自節(jié)點(diǎn)特征的同時(shí)考慮工序—機(jī)器對(duì)特征以及工序-agv對(duì)特征的聯(lián)合特征,從而更準(zhǔn)確的表示其狀態(tài)空間;
46、本發(fā)明將節(jié)點(diǎn)特征輸入多重注意力網(wǎng)絡(luò)進(jìn)行g(shù)at編碼,獲得新特征;將新特征與聯(lián)合特征結(jié)合,使用訓(xùn)練好網(wǎng)絡(luò)參數(shù)的決策模塊中的用于決策的actor網(wǎng)絡(luò)進(jìn)行mlp解碼,選擇概率最高的動(dòng)作并執(zhí)行,完成狀態(tài)轉(zhuǎn)移。