本發(fā)明涉及作業(yè)車間調(diào)度領(lǐng)域,具體地涉及用算法求解多個訂單交付周期存在沖突的問題。
背景技術(shù):
作業(yè)車間調(diào)度問題(Job-Shop Scheduling Problem,JSP)是制造執(zhí)行系統(tǒng)研究的核心和重點(diǎn)之一,它的研究不僅具有重大的現(xiàn)實(shí)意義,而且具有深遠(yuǎn)的理論意義?,F(xiàn)有技術(shù)已有很多針對JSP的算法,比如:遺傳算法、粒子群算法、模擬退火算法、蟻群算法........這些算法都對解決JS問題有很大的影響跟作用,但到目前為止沒有確切針對作業(yè)訂單交付周期多且存在沖突的情況作出對應(yīng)的實(shí)用解決方案。
最高響應(yīng)比優(yōu)先調(diào)度算法,是一種既考慮作業(yè)的執(zhí)行時間也考慮作業(yè)的等待時間,綜合了先來先服務(wù)算法和最短作業(yè)優(yōu)先算法特點(diǎn)的一種算法。傳統(tǒng)的最高響應(yīng)比優(yōu)先調(diào)度算法應(yīng)用于計算機(jī)操作系統(tǒng)的批量作業(yè)處理,是一對多的關(guān)系(一臺計算機(jī)操作系統(tǒng)處理多個作業(yè)),沒有多對多的關(guān)系,且沒有一個沖突評價標(biāo)準(zhǔn)來給系統(tǒng)做沖突警報。
技術(shù)實(shí)現(xiàn)要素:
針對現(xiàn)有技術(shù)存在的上述不足,本發(fā)明提出一種改進(jìn)的最高響應(yīng)比優(yōu)先調(diào)度算法,解決作業(yè)車間調(diào)度中多個訂單交付周期存在沖突的問題。
本發(fā)明的目的是:使算法能夠在多對多對象的環(huán)境中運(yùn)行,且求解效果達(dá)到最佳。
本發(fā)明為實(shí)現(xiàn)上述目的所采用的技術(shù)方案是:一種解決作業(yè)車間多個訂單交付周期存在沖突問題的算法,該算法的步驟如下:
步驟1:提取各個訂單信息:包括接收訂單時間、訂單周期、訂單數(shù)目、訂單作業(yè)種類、每個種類作業(yè)的數(shù)目、機(jī)器數(shù)目、作業(yè)J在機(jī)器M的預(yù)計執(zhí)行時間(處理時間);
步驟2:計算每個訂單緊急程度,用訂單響應(yīng)比RO來描述;
步驟3:計算每個訂單里面每個作業(yè)緊急程度;
步驟4:建立訂單沖突機(jī)制;
步驟5:計算每個訂單里面所有作業(yè)單元的周轉(zhuǎn)時間RT;
步驟6:計算訂單周轉(zhuǎn)系數(shù)C,如果周轉(zhuǎn)系數(shù)C>1轉(zhuǎn)到步驟7,否則算法結(jié)束;
步驟7:計算機(jī)器共享率s,轉(zhuǎn)到步驟3。
本發(fā)明的有益效果是:
1.本發(fā)明對傳統(tǒng)最高響應(yīng)比優(yōu)先算法做出了改進(jìn),使算法能夠在多對多對象的環(huán)境中使用。
2.本發(fā)明建立了訂單沖突機(jī)制,使算法避免了在不沖突情況的多余運(yùn)行。
3.本發(fā)明通過周轉(zhuǎn)系數(shù)的判定,使算法的輸出結(jié)果更精確。
具體實(shí)施方式
一般的,傳統(tǒng)最高響應(yīng)比優(yōu)先算法是運(yùn)用在計算機(jī)操作系統(tǒng)中CPU與作業(yè)之間的調(diào)度問題,實(shí)現(xiàn)的是一對多的關(guān)系。而且,傳統(tǒng)最高響應(yīng)比優(yōu)先算法執(zhí)行能力低,不靈活。對于此,本發(fā)明通過多次計算訂單響應(yīng)比、作業(yè)響應(yīng)比以及建立沖突機(jī)制、訂單周轉(zhuǎn)系數(shù)、機(jī)器共享率等,對算法解的精確度做改進(jìn)。同時在耗時方面,本算法也有一定的優(yōu)化。
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下進(jìn)一步詳細(xì)描述本發(fā)明。
步驟1:提取各個訂單信息:包括接收訂單時間、訂單周期、訂單數(shù)目、訂單作業(yè)種類、每個種類作業(yè)的數(shù)目、機(jī)器數(shù)目、作業(yè)J在機(jī)器M的預(yù)計執(zhí)行時間(處理時間)。
步驟2:計算每個訂單緊急程度,用訂單響應(yīng)比RO來描述,響應(yīng)比用訂單預(yù)計完成時間與訂單周期的比來刻畫。具體計算公式如下:
其中訂單響應(yīng)比越大,訂單越緊急,越應(yīng)該得到及時處理。
步驟3:計算每個訂單里面每個作業(yè)緊急程度,同樣的,作業(yè)緊急程度用作業(yè)響應(yīng)比RJ來描述,作業(yè)響應(yīng)比是作業(yè)所需加工時間與訂單周期之比。具體如下:
其中作業(yè)響應(yīng)比越大,作業(yè)越緊急,越應(yīng)該得到及時處理。
步驟4:訂單沖突機(jī)制的建立:建立兩個訂單的沖突相關(guān)性,如果有兩個訂單的接收訂單時間相同、響應(yīng)比相同,且其中對應(yīng)的兩個作業(yè)的響應(yīng)比相同,則認(rèn)為這兩個訂單是有沖突的。對于有沖突的訂單,可以通過如下方法來判定優(yōu)先執(zhí)行哪個訂單:
計算沖突優(yōu)先數(shù)p:
其中沖突優(yōu)先數(shù)p越小,越可以先執(zhí)行。
步驟5:計算每個訂單里面所有作業(yè)單元的周轉(zhuǎn)時間RT
RT=結(jié)束時間-接收訂單時間
步驟6:計算訂單周轉(zhuǎn)系數(shù)C:
如果訂單周轉(zhuǎn)系數(shù)C>1,轉(zhuǎn)到步驟7,否則算法結(jié)束。
步驟7:計算機(jī)器共享率s:
其中機(jī)器共享率s越大的作業(yè)種類越可先執(zhí)行。