一種柔性作業(yè)車間調(diào)度多目標(biāo)的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)集成制造技術(shù),具體地說是一種實(shí)用性強(qiáng)的柔性作業(yè)車間調(diào)度 多目標(biāo)的方法。
【背景技術(shù)】
[0002] 在現(xiàn)有技術(shù)的車間調(diào)度過程中,如何實(shí)現(xiàn)最優(yōu)的調(diào)度是難點(diǎn),這里的調(diào)度是指生 產(chǎn)成本、生產(chǎn)時(shí)間及產(chǎn)品合格率的調(diào)度,在實(shí)際工作中,其調(diào)度問題的求解方法大體上可以 分為兩類:最優(yōu)化方法和近似方法。
[0003] 1、最優(yōu)化方法包括數(shù)學(xué)規(guī)劃(動(dòng)態(tài)規(guī)劃、整數(shù)規(guī)劃)、分枝定界法、拉氏松弛法等。
[0004] 2、近似優(yōu)化方法包括啟發(fā)式方法、基于仿真的方法、圖搜索法、啟發(fā)式算法(遺傳 算法、模擬退火算法、禁忌搜索算法、蟻群算法、粒子群算法)等,其中:啟發(fā)式方法,主要用 在動(dòng)態(tài)實(shí)時(shí)調(diào)度中,啟發(fā)式方法易于實(shí)現(xiàn)、計(jì)算復(fù)雜度低,被大量地研宄與應(yīng)用;基于仿真 的方法,制造系統(tǒng)的復(fù)雜性高,往往通過使用仿真模型對(duì)實(shí)際的生產(chǎn)過程的性能及各個(gè)階 段的狀態(tài)進(jìn)行分析,通過仿真的方法(一般包括黑盒測試和白盒測試),對(duì)系統(tǒng)進(jìn)行多目標(biāo) 優(yōu)化;圖搜索法,在解決柔性車間調(diào)度問題上,先把車間問題轉(zhuǎn)化在成析取圖中尋找最小路 徑的問題,構(gòu)造出一組可行解,采用枚舉類型的方法不斷提高解的質(zhì)量。
[0005] 3、通過賦予每個(gè)目標(biāo)不同的權(quán)重系數(shù)將多目標(biāo)問題轉(zhuǎn)換為單目標(biāo)問題;
[0006] 4、利用Pareto優(yōu)化策略求解;
[0007] 這類方法雖然在理論上能求得最優(yōu)解,但是由于其計(jì)算復(fù)雜,往往只能針對(duì)小規(guī) 模的問題求解。
[0008] 同時(shí),上述啟發(fā)式方法存在如何為多種決策確定合適的啟發(fā)式規(guī)則以及各啟發(fā)式 規(guī)則如何低階實(shí)現(xiàn)的問題;基于仿真的方法存在缺乏理論依據(jù)、費(fèi)用高、仿真的準(zhǔn)確性嚴(yán)重 依賴于編程人員的判斷和經(jīng)驗(yàn)的問題;圖搜索法存在如何提高搜索效率、減少內(nèi)存占用的 問題;針對(duì)加權(quán)系數(shù)法對(duì)權(quán)重系數(shù)的確定存在較大的主觀因素,對(duì)實(shí)驗(yàn)結(jié)果影響較大的局 限性?;诖?,現(xiàn)提供一種基于改進(jìn)的蟻群算法的柔性作業(yè)車間調(diào)度多目標(biāo)的方法。
【發(fā)明內(nèi)容】
[0009] 本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種實(shí)用性強(qiáng)、柔性作業(yè)車間調(diào)度 多目標(biāo)的方法。
[0010] 一種柔性作業(yè)車間調(diào)度多目標(biāo)的方法,其具體實(shí)現(xiàn)過程為:
[0011] 首先針對(duì)多目標(biāo)柔性車間,建立一個(gè)模型;
[0012] 使用蟻群算法優(yōu)化上述模型,并將結(jié)果進(jìn)行評(píng)價(jià),查看是否為最優(yōu)方案;
[0013] 根據(jù)最優(yōu)方案,改進(jìn)信息素的更新規(guī)則,提高算法的收斂速度,得出多目標(biāo)柔性車 間調(diào)度問題的Pareto最優(yōu)解。
[0014] 所述模型的建立過程為:M工件在N臺(tái)機(jī)器上加工,給定各工序的加工時(shí)間,加工 次序約束和可供選擇的機(jī)器約束,在滿足各項(xiàng)約束的條件下,確定每臺(tái)機(jī)器上所有工件的 加工次序及加工開始時(shí)間和結(jié)束時(shí)間,以達(dá)到最優(yōu)加工性能指標(biāo);每個(gè)工件i包含Iii道工 序,各工序之間有工藝上的先后約束,其中:
[0015] Iii為工序數(shù);m為機(jī)器數(shù);V ij表示工件i的第j道工序;X ijk表示工件i的第j道 工序在機(jī)器k上執(zhí)行,當(dāng)Xijk= 1時(shí)表示工件i的第j道工序選中在機(jī)器k上執(zhí)行,否則是 未選中在機(jī)器k上執(zhí)行;tijk表示工件i的第j道工序在機(jī)器k上的完工時(shí)間;R ijmi表示表 示在機(jī)器q上工件i的第j道工序和工件m的第η道工序的加工先后順序,當(dāng)Rijmnq= 1時(shí) 表示工序j先于工序n,Rijnmq= 0表示工序η先于工序j。
[0016] 所述模型的優(yōu)化是指加工成本、加工時(shí)間和成品合格率這三個(gè)目標(biāo)的優(yōu)化。
[0017] 所述模型優(yōu)化的具體內(nèi)容為:
[0018] 加工成本表示為:
[0019] 加工時(shí)間表示為:
[0020] 成品合格率表示為:
[0021] 上述三個(gè)目標(biāo)的優(yōu)化均在評(píng)價(jià)函數(shù)中進(jìn)行,該評(píng)價(jià)函數(shù)表示為:min/max f(x)= F (X) = (?\ (X),f2 (X),…,fm (X)) 〇
[0022] 所述蟻群算法的具體過程為:
[0023] 1)初始化算法參數(shù),該參數(shù)包括:螞蟻數(shù)量k,該k為多1的自然數(shù),迭代次數(shù)t, 初始信息素%;螞蟻將要訪問的所有工序的集合G k,下一步允許訪問的工序的集合Sk,各 個(gè)螞蟻已走過的工序集合Jk,各個(gè)螞蟻被隨機(jī)的分配到Gk中,并初始化集合BP (t),t = 0 ;
[0024] 2)選擇搜索路徑,螞蟻k按照以下轉(zhuǎn)移概率公式在集合Sk中選擇下一步的要到達(dá) 的工序:
[0025]
[0026] 3)更新工序集合,更新集合BP (t),螞蟻k根據(jù)步驟2)選擇了一道工序后,將其添 加至已走過的工序集合Jk中,同時(shí)從集合G k和集合S k中刪除該道工序,更新集合S k,如果 本次進(jìn)行的工序不是最后一道工序,那么其后續(xù)工序被添加到Sk中,重復(fù)以上過程,直至集 合Gk為空;
[0027] 4)更新信息素;
[0028] 5)重復(fù)步驟2)到步驟4),進(jìn)行下一代螞蟻的搜索,尋找全局最優(yōu)和迭代最優(yōu)的螞 蟻,直到滿足終止條件。
[0029] 所述步驟1)中的集合BP(t)用來保存整個(gè)蟻群經(jīng)過t次迭代后所發(fā)現(xiàn)的所有 Pareto解集;在該集合BP (t)中尋找散布最稀疏的非支配解。
[0030] 所述集合BP(t)中有q個(gè)非支配解X = (xl,x2,…,xq);
[0031] 當(dāng)螞蟻i進(jìn)入集合BP(t)時(shí),則該螞蟻所在位置不可支配,螞蟻i可作為尋優(yōu)方 向;增加螞蟻i的信息素,以引導(dǎo)其他的螞蟻對(duì)螞蟻i在位置的領(lǐng)域進(jìn)行搜索;相反,則減 小信息素;
[0032] 當(dāng)多個(gè)螞蟻同時(shí)進(jìn)入集合BP (t)時(shí),為了區(qū)別每個(gè)螞蟻的信息素增量,用新進(jìn)入 集合BP (t)的螞蟻i與原集合BP (t)中解的目標(biāo)函數(shù)值的最小距離Θ (t)作為螞蟻i所在 位置釋放的信息素:
[0033]
[0034] 基于該信息素,上述步驟4)中蟻群算法的信息素更新定義如下:
[0035]
其中,P為揮發(fā)系數(shù)。
[0036] 本發(fā)明的一種柔性作業(yè)車間調(diào)度多目標(biāo)的方法,具有以下優(yōu)點(diǎn):
[0037] 本發(fā)明提出的一種柔性作業(yè)車間調(diào)度多目標(biāo)的方法,通過改進(jìn)的蟻群算法,在加 工成本、加工時(shí)間、成品合格率為優(yōu)化目標(biāo)對(duì)車間調(diào)度進(jìn)行多目標(biāo)優(yōu)化已經(jīng)取得了良好的 效果,降低車間生產(chǎn)成本,縮短加工時(shí)間,提高產(chǎn)品的合格率,實(shí)用性強(qiáng),易于推廣。
【附圖說明】
[0038] 附圖1為本發(fā)明的實(shí)現(xiàn)流程圖。
[0039] 附圖2為α和β對(duì)算法特性的影響曲線圖。
[0040] 附圖3為利用Matlab2011b進(jìn)行的柔性作業(yè)車間調(diào)度多目標(biāo)優(yōu)化仿真獲得的 Pareto前沿圖。
【具體實(shí)施方式】
[0041] 下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。
[0042] 本發(fā)明提供一種柔性作業(yè)車間調(diào)度多目標(biāo)的方法,通過增加了一個(gè)用來保存蟻群 迭代后出現(xiàn)的所有Pareto解集的集合BP,提高了蟻群的搜索能力;通過基于全局最優(yōu)經(jīng)驗(yàn) 指導(dǎo)的尋優(yōu)方式改進(jìn)信息素的更新規(guī)則,提高算法的收斂速度。從而,得出多目標(biāo)柔性車間 調(diào)度問題的Pareto最優(yōu)解。
[0043] 如附圖1所示,其具體實(shí)現(xiàn)過程為,
[0044] 首先針對(duì)多目標(biāo)柔性車間,建立一個(gè)模型;
[0045] 使用蟻群算法優(yōu)化上述模型,并將結(jié)果進(jìn)行評(píng)價(jià),查看是否為最優(yōu)方案;
[0046] 根據(jù)最優(yōu)方案,改進(jìn)信息素的更新規(guī)則,提高算法的收斂速度,得出多目標(biāo)柔性車 間調(diào)度問題的Pareto最優(yōu)解。
[0047] 所述模型的建立過程為:M工件在N臺(tái)機(jī)器上加工,給定各工序的加工時(shí)間,加工 次序約束和可供選擇的機(jī)器約束,在滿足各項(xiàng)約束的條件下,確定每臺(tái)機(jī)器上所有工件的 加工次序及加工開始時(shí)間和結(jié)束時(shí)間,以達(dá)到最優(yōu)加工性能指標(biāo);每個(gè)工件i包含Iii道工 序,各工序之間有工藝上的先后約束,其中:
[0048] Iii為工序數(shù);m為機(jī)器數(shù);V u表示工件i的第j道工序;X ijk表示工件i的第j道 工序在機(jī)器k上執(zhí)行,當(dāng)Xijk= 1時(shí)表示工件i的第j道工序選中在機(jī)器k上執(zhí)行,否則是 未選中在機(jī)器k上執(zhí)行;tijk表示工件i的第j道工序在機(jī)器k上的完工時(shí)間;R ijmn(1表示 表示在機(jī)器q上工件i的第j道工序和工件m的第η道工序的加工先后順序,當(dāng)Rijmnq= 1 時(shí)表示工序j先于工序n,Rijnmq= O表示工序η先于工序j。
[0049] 所述模型的優(yōu)化是指加工成本、加工時(shí)間和成品合格率這三個(gè)目標(biāo)的優(yōu)化。
[0050] 所述模型優(yōu)化的具體內(nèi)容為:
[0051] 加工成本表示為
[0052] 加工時(shí)間表示為
[0053] 成品合格率表示為
[0054] 上述三個(gè)目標(biāo)的優(yōu)化均在評(píng)價(jià)函數(shù)中進(jìn)行,該評(píng)價(jià)函數(shù)表示為:min/max f(x)= F (X) = (?\ (X),f2 (X),…,fm (X)) 〇
[0055] 蟻群算法模擬了自然界螞蟻尋找從蟻巢到食物源的最短路徑并找到回蟻巢路徑 的機(jī)制。螞蟻之間通過一種信息素來相互交流信息,在移動(dòng)的過程中,螞蟻在經(jīng)過的路徑 上散發(fā)信息素,通過感知路徑上的信息素進(jìn)行通信,個(gè)體之間并不直接進(jìn)行交互,而是通過 改變它們共同存在的環(huán)境進(jìn)行交互,個(gè)體又通過對(duì)環(huán)境的改變?nèi)ビ绊懫渌鼈€(gè)體的行為,從 而形成了一種