技術(shù)背景
本發(fā)明屬于信息與控制技術(shù)領(lǐng)域,尤其涉及再制造系統(tǒng)的拆解、預(yù)處理和再裝配的一體化調(diào)度方法。
背景技術(shù):
再制造是實現(xiàn)節(jié)約能源和保護環(huán)境的可持續(xù)發(fā)展的典型生產(chǎn)模式,可以再次開發(fā)和利用廢舊產(chǎn)品蘊含的有價值的資源,能夠緩解資源需求大與資源短缺的矛盾,并減少大量廢舊產(chǎn)品對環(huán)境的污染和危害。一般的再制造系統(tǒng)包括拆解車間、預(yù)處理車間和再裝配車間。首先,拆解車間將廢舊產(chǎn)品拆解為多個零件;然后,預(yù)處理車間對這些零件進行再加工;最后,再裝配車間將這些零件重新組裝為產(chǎn)品。對拆解車間、預(yù)處理車間和再裝配車間的生產(chǎn)過程進行有效合理地調(diào)度是提高再制造效率的關(guān)鍵。
再制造系統(tǒng)的拆解、預(yù)處理和再裝配三個車間的調(diào)度問題通常采用獨立優(yōu)化的方式,無法實現(xiàn)三個車間的有序銜接和整體最優(yōu)。
技術(shù)實現(xiàn)要素:
基于群體的智能優(yōu)化算法可以解決上述問題。蛙跳算法是模擬青蛙群體覓食行為的優(yōu)化算法,通過將青蛙群體分割為多個族群,同一族群里青蛙個體間的信息交互實現(xiàn)了對問題解空間的搜索?;趯W(xué)習(xí)機制的蛙跳算法引入了個體間的學(xué)習(xí)機制,通過青蛙群體里個體間的相互學(xué)習(xí),實現(xiàn)群體共享搜索信息,從而達(dá)到對問題最優(yōu)解的快速準(zhǔn)確地搜索的目標(biāo)。
為了解決再制造系統(tǒng)的拆解、預(yù)處理和再裝配三個車間的調(diào)度問題通常采用獨立優(yōu)化的方式,無法實現(xiàn)三個車間的有序銜接和整體最優(yōu),本發(fā)明提供一種再制造系統(tǒng)的拆解、預(yù)處理和再裝配的一體化調(diào)度方法。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:一種再制造系統(tǒng)的拆解、預(yù)處理和再裝配的一體化調(diào)度方法,所述方法包括以下步驟:
步驟1:獲取拆解車間里拆解工作站的個數(shù),預(yù)處理車間里階段數(shù)以及各個階段包含的工作站的個數(shù),再裝配車間里工作站的個數(shù);廢舊產(chǎn)品的個數(shù),各廢舊產(chǎn)品可以拆解的零件的個數(shù),各廢舊產(chǎn)品在拆解車間的拆解時間,各零件在預(yù)處理車間各個階段的處理時間以及產(chǎn)品在再裝配車間的裝配時間;
步驟2:建立再制造系統(tǒng)拆解-預(yù)處理-再裝配的一體化調(diào)度模型,
(1)優(yōu)化目標(biāo)
以最小化總再制造時間為優(yōu)化目標(biāo),即最小化所有產(chǎn)品的再裝配結(jié)束時間,按下式進行描述,即公式1:
(2)拆解、預(yù)處理和再裝配車間的工作站的分配約束
設(shè)定拆解和再裝配車間里每個產(chǎn)品只能在一個工作站上被拆解或裝配,預(yù)處理車間里每個零件在每個階段只能在一個工作站上進行處理,按下式進行描述:
(3)拆解、預(yù)處理和再裝配車間的工作站的生產(chǎn)約束
設(shè)定拆解、預(yù)處理和再裝配車間的每個工作站在同一時刻只能處理一個產(chǎn)品或零件,按下式進行描述:
(4)鄰接車間的處理銜接約束
設(shè)定每個產(chǎn)品在拆解車間被拆解完成后,相應(yīng)的零件方可允許在預(yù)處理車間開始處理;當(dāng)產(chǎn)品對應(yīng)的所有零件在預(yù)處理車間的預(yù)處理操作結(jié)束后,該產(chǎn)品方可允許在再裝配車間進行裝配,按下式進行描述:
(5)變量取值約束
設(shè)定產(chǎn)品的拆解結(jié)束時間、零件的預(yù)處理結(jié)束時間及產(chǎn)品的再裝配結(jié)束時間為大于零的實數(shù),決策變量取值為0或1,按下式進行描述:
步驟3:利用基于學(xué)習(xí)機制的蛙跳算法對該再制造系統(tǒng)的拆解、預(yù)處理和再裝配一體化調(diào)度問題進行求解,獲得最佳的調(diào)度方案,具體步驟如下:
步驟3-1:初始化算法參數(shù),包括種群規(guī)模f,族群個數(shù)p,族群規(guī)模q,子族群個數(shù)u,子族群規(guī)模r及學(xué)習(xí)概率β,當(dāng)前獲得的最好解y及最好目標(biāo)值z,總估值次數(shù)tfet;
步驟3-2:生成初始種群p。采用自然數(shù)編碼表示一個青蛙個體或解,利用隨機方法生成f個解,更新當(dāng)前最好個體y及最好目標(biāo)值z;
步驟3-3:評價個體的目標(biāo)值。分為三種情況,描述如下:a.在拆解車間里,產(chǎn)品按照個體給出的順序依次分配到最早可用的工作站進行拆解;b.在預(yù)處理車間里的第一階段,將每個產(chǎn)品對應(yīng)的零件按照處理時間升序排序,根據(jù)該順序依次分配到最早可用的工作站進行處理;在后續(xù)階段,按照零件的到達(dá)順序依次分配到最早可用的工作站上進行處理;c.在再裝配車間,當(dāng)產(chǎn)品對應(yīng)的所有零件完成預(yù)處理操作后,選擇最早可用的工作站進行再裝配操作。依據(jù)該方法可以計算個體的目標(biāo)值;
步驟3-4:設(shè)置估值次數(shù)fet=0;
步驟3-5:實施種群的進化:
步驟3-5-1:構(gòu)造多個族群。將種群按照個體的目標(biāo)值降序排序,將第一個個體分配到第一個族群,第二個個體分配到第二個族群,第p個個體分配到第p個族群,第p+1個個體分配第一個族群。依此方法,完成所有個體的分配,這樣就構(gòu)造了p個族群,每個族群包含q個個體,這里f=p×q。
步驟3-5-2:對每一個族群,執(zhí)行以下操作u次:
步驟3-5-2-1:構(gòu)建子族群:從當(dāng)前族群中隨機選擇r個個體構(gòu)造一個子族群;
步驟3-5-2-2:對該子族群執(zhí)行如下操作:
a.選擇該子族群中最好個體xb和最差個體xw執(zhí)行交叉操作產(chǎn)生一個個體x,并計算其目標(biāo)值,令fet=fet+1。若該個體優(yōu)于最差個體,則將其替代最差個體,并轉(zhuǎn)向執(zhí)行操作a;否則執(zhí)行操作b;
b.選擇當(dāng)前種群中的最好個體xg與當(dāng)前子族群的最差個體xw執(zhí)行交叉操作產(chǎn)生一個個體x,并計算其目標(biāo)值,令fet=fet+1。若該個體優(yōu)于最差個體,則將其替代最差個體,并轉(zhuǎn)向執(zhí)行操作a;否則執(zhí)行操作c;
c.隨機產(chǎn)生一個個體x,并計算其目標(biāo)值,令fet=fet+1,將其替代當(dāng)前子族群的最差個體,轉(zhuǎn)向操作a。
步驟3-6:將所有族群混合構(gòu)成種群p;
步驟3-7:實施種群的學(xué)習(xí)策略。令
步驟3-8:生成下一代種群。令p=p∪p‘,保留f個優(yōu)勢個體,并剔除其他劣勢個體,更新當(dāng)前獲得的最好解y和最好目標(biāo)值z。
step3-9:若算法已達(dá)到停止條件,即fet≥tfet,則算法停止并輸出最好解y和最好目標(biāo)值z;否則轉(zhuǎn)向步驟3-5。
上述中,涉及到的符號定義如下:
i產(chǎn)品索引,i=1,2,……,n;
j零件索引,j=1,2,……,m;
l預(yù)處理車間階段索引,l=1,2,……,s;
k工作站索引,對于拆解車間,k=1,2,……,rd;對于預(yù)處理車間,k=1,2,……,
xik如果產(chǎn)品i在拆解車間的第k個工作站上拆解,則xik=1;否則xik=0;
yijkl如果產(chǎn)品i的零件j在預(yù)處理車間的第l個階段的第k個工作站上處理,則yijkl=1;否則yijkl=0;
zik如果產(chǎn)品i在再裝配車間的第k個工作站上裝配,則zik=1;否則zik=0。
本發(fā)明的技術(shù)構(gòu)思為:拆解、預(yù)處理和再裝配是廢舊產(chǎn)品再制造過程的主要流程。通常,拆解車間、預(yù)處理車間和再裝配車間獨立地制定調(diào)度方案,這種方法保證了各個車間調(diào)度方案的最優(yōu),但未能考慮相鄰車間的銜接問題。因此,無法實現(xiàn)整體調(diào)度方案最優(yōu)性。本發(fā)明旨在實現(xiàn)拆解、預(yù)處理和再裝配車間的一體化調(diào)度方法,使得再制造過程能夠有序銜接,從而實現(xiàn)再制造資源的有效和合理地利用。
附圖說明
圖1是再制造系統(tǒng)的拆解、預(yù)處理和再裝配的一體化調(diào)度流程圖。
圖2是基于學(xué)習(xí)機制的蛙跳算法的流程圖。
圖3是個體間的學(xué)習(xí)方法示意圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明做進一步的描述。
如圖1和圖2,一種再制造系統(tǒng)的拆解、預(yù)處理和再裝配的一體化調(diào)度優(yōu)化方法,所述方法包括以下步驟:
步驟1:根據(jù)再制造生產(chǎn)流程構(gòu)建一體化調(diào)度模型。依據(jù)附圖1所示一體化調(diào)度流程圖的結(jié)構(gòu),構(gòu)建一體化調(diào)度模型,其中,所涉及到的符號定義如下:
i產(chǎn)品索引,i=1,2,……,n;
j零件索引,j=1,2,……,m;
l預(yù)處理車間階段索引,l=1,2,……,s;
k工作站索引,對于拆解車間,k=1,2,……,rd;對于預(yù)處理車間,k=1,2,……,
xik如果產(chǎn)品i在拆解車間的第k個工作站上拆解,則xik=1;否則xik=0;
yijkl如果產(chǎn)品i的零件j在預(yù)處理車間的第l個階段的第k個工作站上處理,則yijkl=1;否則yijkl=0;
zik如果產(chǎn)品i在再裝配車間的第k個工作站上裝配,則zik=1;否則zik=0。
①優(yōu)化目標(biāo)
以最小化總的再制造時間為優(yōu)化目標(biāo),即最小化所有產(chǎn)品的再裝配結(jié)束時間,按下式進行描述:
②拆解、預(yù)處理和再裝配車間的工作站的分配約束
設(shè)定拆解和再裝配車間里每個產(chǎn)品只能在一個工作站上被拆解或裝配,預(yù)處理車間里每個零件在每個階段只能在一個工作站上進行處理,按下式進行描述:
其中,式(1)表示每個產(chǎn)品在拆解車間內(nèi)只能在一個工作站上被拆解;式(2)表示每個零件在預(yù)處理車間的各個階段只能在一個工作上實施預(yù)處理;式(3)表示在再裝配車間內(nèi)每個產(chǎn)品只能在一個工作站上被裝配。
③拆解、預(yù)處理和再裝配車間的工作站的生產(chǎn)約束
設(shè)定拆解、預(yù)處理和再裝配車間的每個工作站在同一時刻只能處理一個產(chǎn)品或零件,按下式進行描述:
其中式(4)表示拆解車間里每個工作站上同一時刻只能拆解一個產(chǎn)品;式(5)表示預(yù)處理車間里每個階段的每個工作站同一時刻只能處理一個零件;式(6)表示預(yù)處理車間里零件在相鄰工作站的處理次序和時間約束,即零件在前一工作站處理結(jié)束,后一工作站才允許繼續(xù)處理;式(7)表示再裝配車間里每個工作站上同一時刻只能裝配一個產(chǎn)品。
④鄰接車間的處理次序約束
設(shè)定每個產(chǎn)品在拆解車間被拆解完成后,相應(yīng)的零件允許在預(yù)處理車間開始處理;當(dāng)產(chǎn)品對應(yīng)的所有零件在預(yù)處理車間的預(yù)處理工序結(jié)束后,該產(chǎn)品允許在再裝配車間進行裝配,按下式進行描述:
其中式(8)表示每個產(chǎn)品在拆解車間里拆解結(jié)束后,相應(yīng)的零件可以在預(yù)處理車間實施預(yù)處理操作;式(9)和式(10)表示每個產(chǎn)品對應(yīng)的所有零件在預(yù)處理車間里完成預(yù)處理操作后,該產(chǎn)品可以在再裝配車間進行裝配操作。
⑤變量取值約束
設(shè)定產(chǎn)品的拆解結(jié)束時間、零件的預(yù)處理結(jié)束時間及產(chǎn)品的再裝配結(jié)束時間為大于零的實數(shù),決策變量取值為0或1,按下式進行描述:
其中,式(11)設(shè)定拆解車間內(nèi)各產(chǎn)品的拆解結(jié)束時間及決策變量的取值范圍;式(12)設(shè)定預(yù)處理車間內(nèi)各零件的預(yù)處理結(jié)束時間和決策變量的取值范圍;式(13)設(shè)定再裝配車間內(nèi)各產(chǎn)品的裝配結(jié)束時間和決策變量的取值范圍。
步驟2:問題數(shù)據(jù)輸入。輸入拆解車間里拆解工作站的個數(shù),預(yù)處理車間里階段數(shù)以及各個階段包含的工作站的個數(shù),再裝配車間里工作站的個數(shù);廢舊產(chǎn)品的個數(shù),各廢舊產(chǎn)品可以拆解的零件的個數(shù),各廢舊產(chǎn)品在拆解車間的拆解時間,各零件在預(yù)處理車間各個階段的處理時間以及產(chǎn)品在再裝配車間的裝配時間;
步驟3:算法求解。依據(jù)附圖2所示算法流程圖,利用基于學(xué)習(xí)機制的蛙跳算法對問題進行求解,具體實施如下:
步驟3-1:初始化算法參數(shù),包括種群規(guī)模f,族群個數(shù)p,族群規(guī)模q,子族群個數(shù)u,子族群規(guī)模r及學(xué)習(xí)概率β,當(dāng)前獲得的最好解y及最好目標(biāo)值z,總估值次數(shù)tfet。
步驟3-2:生成初始種群p。采用自然數(shù)編碼表示問題的一個個體或解,利用隨機方法生成f個解,更新當(dāng)前最好個體y。
步驟3-3:評價個體的目標(biāo)值。a.在拆解車間里,產(chǎn)品按照個體顯示的位置順序依次分配到空閑或最早空閑的工作站進行拆解;b.在預(yù)處理車間里的第一階段,將每個產(chǎn)品對應(yīng)的零件按照處理時間升序排序,并按照該順序依次分配到空閑或者最早空閑的工作站進行處理;在后續(xù)階段,按照零件的到達(dá)順序依次分配到空閑或者最早空閑的工作站上進行處理;c.在再裝配車間,當(dāng)產(chǎn)品對應(yīng)的所有零件完成預(yù)處理操作后,選擇空閑或最早空閑的工作站進行再裝配操作。
步驟3-4:設(shè)置估值次數(shù)fet=0;
步驟3-5:實施種群的進化:
步驟3-5-1:構(gòu)造多個族群。將種群按照個體的目標(biāo)值降序排序,按照設(shè)定的規(guī)則將整個種群分成p族群,每個族群有q個個體。這里采用的規(guī)則如下:將第一個個體分配到第一個族群,第二個個體分配到第二個族群,第p個個體分配到第p個族群,第p+1個個體分配第一個族群。依此方法,完成所有個體的分配,從而構(gòu)造m個族群,每個族群包含q個個體,這里f=p×q。
步驟3-5-2:每一個族群,執(zhí)行以下操作u次:
步驟3-5-2-1:構(gòu)建子族群:從當(dāng)前族群中隨機選擇r個個體;
步驟3-5-2-2:子族群執(zhí)行如下操作:
a.選擇該子族群中最好個體xb和最差個體xw執(zhí)行交叉操作產(chǎn)生一個個體x,并計算其目標(biāo)值,令fet=fet+1。若該個體優(yōu)于最差個體,則將其替代最差個體,并轉(zhuǎn)向執(zhí)行操作a;否則執(zhí)行操作b;
b.選擇當(dāng)前種群中的最好個體xg與當(dāng)前子族群的最差個體xw執(zhí)行交叉操作產(chǎn)生一個個體x,并計算其目標(biāo)值,fet=fet+1。若該個體優(yōu)于最差個體,則將其替代最差個體,并轉(zhuǎn)向執(zhí)行操作a;否則執(zhí)行操作c;
c.隨機產(chǎn)生一個個體x,并計算其目標(biāo)值,令fet=fet+1。將其替代當(dāng)前子族群的最差個體,轉(zhuǎn)向操作a。
步驟3-6:將所有族群混合構(gòu)成種群p;
步驟3-7:實施種群的學(xué)習(xí)策略。令
步驟3-8:生成下一代種群。令p=p∪p‘,保留f個優(yōu)勢個體,并剔除其他劣勢個體,并更新當(dāng)前獲得的最好解y和最好目標(biāo)值z。
step3-9:若算法已達(dá)到停止條件,即fet≥tfet,則算法停止并輸出最好解y和最好目標(biāo)值z;否則轉(zhuǎn)向步驟3-5。
上述實施例只是為了說明本發(fā)明的技術(shù)構(gòu)思及特點,其目的是在于讓本領(lǐng)域內(nèi)的普通技術(shù)人員能夠了解本發(fā)明的內(nèi)容并據(jù)以實施,并不能以此限制本發(fā)明的保護范圍。凡是根據(jù)本發(fā)明內(nèi)容的實質(zhì)所作出的等效的變化或修飾,都應(yīng)涵蓋在本發(fā)明的保護范圍內(nèi)。