本發(fā)明涉及車間設(shè)備多目標優(yōu)化布局的方法,尤其涉及一種自適應(yīng)遺傳算法的車間設(shè)備多目標優(yōu)化布局方法,既包括對車間設(shè)備多行直線布局方式的數(shù)學建模以及多目標優(yōu)化問題的解決方法,也包括自適應(yīng)遺傳算法求解該數(shù)學模型的具體過程,以及對較優(yōu)解進行適當調(diào)整從而獲得布局最優(yōu)解。
背景技術(shù):
設(shè)備布局問題(facility layout problem,F(xiàn)LP)是指在一定限制條件下(如車間面積形狀、物流方式等),將生產(chǎn)設(shè)備在給定空間內(nèi)布局,使目標函數(shù)(如物流費用、面積使用率等)得到優(yōu)化。
目前,設(shè)備布局采用數(shù)學分析法建立的模型主要包括二次分配模型、二次集合覆蓋模型、線性整數(shù)規(guī)劃模型、混合整數(shù)規(guī)劃模型等。其中,二次分配模型(quadratic assignment problem,QAP)描述n個設(shè)施和n個地點,要求給每個設(shè)施分配到一個位置,并使設(shè)施之間的總流量(或費用)最小。
QAP模型的最優(yōu)求解算法,可以歸為分支定界法和割平面法兩類。這兩種算法都需要較多的計算時間和較大的存儲空間,隨著布局規(guī)模的擴大,最優(yōu)算法因“組合爆炸”問題已不再適用,目前研究者多采用元啟發(fā)式算法求次優(yōu)解。其中,遺傳算法因其全局性并行搜索的特點,被廣泛運用于QAP求解;但遺傳算法的參數(shù)選擇對結(jié)果影響較大,而自適應(yīng)遺傳算法可以根據(jù)個體自身的優(yōu)劣程度實時調(diào)整參數(shù)大小,從而提高算法效率。
技術(shù)實現(xiàn)要素:
為解決生產(chǎn)車間設(shè)備的優(yōu)化布局問題,本發(fā)明提供一種多行直線布局的數(shù)學建模方法,確定兩個優(yōu)化目標及約束條件,并采用自適應(yīng)遺傳算法進行求解,對獲得的較優(yōu)解進行分析并適當調(diào)整,得到滿足優(yōu)化目標的最優(yōu)布局。
本發(fā)明通過如下技術(shù)方案實現(xiàn):
一種基于自適應(yīng)遺傳算法的車間設(shè)備多目標優(yōu)化布局方法,包括步驟:
(1)建立車間設(shè)備多行直線布局的數(shù)學模型,即將車間和待布局設(shè)備簡化為矩形,將設(shè)備優(yōu)化布局問題轉(zhuǎn)化為組合優(yōu)化的數(shù)學模型;
(2)確定若干優(yōu)化目標及約束條件,采用加權(quán)法將若干優(yōu)化目標統(tǒng)一為單一評價函數(shù);
(3)采用基于Logistic曲線的自適應(yīng)遺傳算法求解評價函數(shù)較優(yōu)解;
(4)對所得較優(yōu)解進行適當調(diào)整,對除最長行以外的其他行設(shè)備之間的凈間距進行適當調(diào)整,進一步減小設(shè)備之間的物流距離和包絡(luò)矩形面積,得到滿足優(yōu)化目標的設(shè)備布局最優(yōu)解。
進一步地,所述的步驟(1)具體包括:
(11)為分別計算,對多行直線布局做出假設(shè),包括:所有設(shè)備形狀均為其包絡(luò)矩形,忽略其細節(jié)形狀及高度;同一行設(shè)備的中心點位于一條直線上,沿X軸正方向依次排列;零件加工工藝確定;各行之間有物流通道,與X軸平行,寬度WP為定值;
(12)得到設(shè)備序列s中各臺設(shè)備i的包絡(luò)矩形沿X軸、Y軸尺寸分別為Ai、Bi,通過查閱技術(shù)文檔得到各設(shè)備周邊留出最小安全距離Hi,用于安裝、操作、維修、工件緩沖區(qū),相鄰擺放的兩個設(shè)備i、j之間的最小距離Hij=Hi+Hj,,凈間距為0;
(13)在車間長度L的約束下,當一個設(shè)備序列s確定后,采取自動換行策略,求得該序列s在每行上的設(shè)備分布及設(shè)備中心點的X、Y坐標值。
進一步地,所述的步驟(13)具體包括:
(131)該序列在每行上的設(shè)備分布及設(shè)備中心點X軸坐標值可按如下公式遞推計算:
xs(1)=Hs(1)+As(1)/2
xs(i)=xs(i-1)+Hs(i-1)s(i)+(As(i-1)+As(i))/2,i=2,3,…,n
當xs(j)+As(j)/2+Hs(j)>L時,將設(shè)備s(j)移至下一行第1位,并按照上式繼續(xù)計算設(shè)備s(j)、s(j+1)的X軸坐標值;
(132)令hi=Hi+Bi/2,各行設(shè)備的中心點Y軸坐標值可按如下公式確定:y1=max{hs(1),hs(2),…,hs(m)},其中,s(1)、s(2)、…、s(m)為排在第1行的設(shè)備;y2=y(tǒng)1+max{hs(1),hs(2),…,hs(m)}+WP+max{hs(m+1),hs(m+2),…,hs(r)},其中,s(m+1)、s(m+2)、…、s(r)為排在第2行的設(shè)備,WP為物流通道寬度,以此類推,直至求出最后一行設(shè)備的中心點Y軸坐標值。
進一步地,所述的步驟(2)具體包括:
(21)確定優(yōu)化目標,包括盡可能小的物流費用和盡可能大的面積利用率;
(22)根據(jù)QAP模型可知,求得物流費用:
式中,n為設(shè)備數(shù)量;i、j為設(shè)備編號;pij為設(shè)備i、j之間的訪問次數(shù),可對加工工藝進行統(tǒng)計得出;dij為設(shè)備i、j之間的物流距離,dij=|xi-xj|+|yi-yj|;qij為設(shè)備i、j之間單位距離上的物流費用,根據(jù)生產(chǎn)實際確定,如果運輸方式、工件型號相同,加工過程中工件形態(tài)質(zhì)量變化不大,可視為定值;
求得面積利用率:
η=St/S,
式中,即所有設(shè)備的矩形面積之和,設(shè)備確定之后為定值;S=(xmax-xmin)(ymax-ymin),即包絡(luò)所有設(shè)備的最小矩形面積,xmax=max{xi+Ai/2},xmin=min{xi-Ai/2},ymax=max{yi+Bi/2},ymin=min{yi-Bi/2},因此,面積利用率最大問題可轉(zhuǎn)化為布局的包絡(luò)矩形面積最小問題,即求Smin;
(23)采用加權(quán)法將上述兩個優(yōu)化目標構(gòu)造為一個單一評價函數(shù)并求解:
U=w1F/Fmin+w2S/Smin
w1、w2為加權(quán)因子,根據(jù)實際工程中對于物流和面積各自的側(cè)重程度來確定,要滿足加權(quán)條件w1+w2=1;Fmin、Smin是按單目標優(yōu)化求出的F、S最優(yōu)值,F(xiàn)、S分別除以它們的最優(yōu)值,既消除量綱,又能反映它們偏離最優(yōu)值的程度。
進一步地,步驟(2)中,所述的約束條件具體包括:所有設(shè)備不超出車間長、寬范圍,即:max{xi+Ai/2+Hi}≤L、max{yj+Bj/2+Hj}≤W;存在物流關(guān)系的兩臺設(shè)備不得跨行布置。
進一步地,所述的步驟(3)具體包括:
(31)進行染色體編碼,根據(jù)序列中每個設(shè)備的X、Y坐標值及單一評價函數(shù)U所得的適應(yīng)度函數(shù)隨機生成m個序列作為算法的初始種群A;
(32)選擇,采取隨機聯(lián)賽選擇方式,聯(lián)賽規(guī)模為N,從A中得到包含M條染色體的群體As;
(33)交叉,交叉算子選用部分映射交叉(PMX)方式,將As中的染色體兩兩配對,按照自適應(yīng)交叉概率決定是否交叉,交叉后得到子代群體Ac;
(34)變異,變異算子采用鄰域技術(shù),將As、Ac中的每條染色體都按照自適應(yīng)變異概率決定是否變異,并得到變異的群體Am;
(35)進化及終止,將群體As、Ac、Am中的每個個體按照適應(yīng)度值大小排序,選取前m個個體作為當前進化的結(jié)果更新群體A,然后進行下一次進化,最后以進化代數(shù)T作為終止條件得到評價函數(shù)較優(yōu)解。
進一步地,所述的步驟(31)具體包括:
(311)采用順序編碼方式,給n個設(shè)備各指定一個1~n之間的整數(shù)編號,以1~n的一個排列作為1條染色體來代表一個設(shè)備序列;
(312)接著求出該序列每個設(shè)備的X、Y坐標值,再根據(jù)所得的單一評價函數(shù)U,適應(yīng)度函數(shù)設(shè)為f=1/U;
(313)隨機生成m個序列,作為算法的初始種群A。
進一步地,所述的步驟(32)具體包括:
(321)從A中隨機選取N條染色體,比較它們的適應(yīng)度函數(shù)值大小,將其中最大的保留進入下一代群體;
(322)重復(fù)上述過程M次,得到包含M條染色體的群體As
進一步地,所述的步驟(33)具體包括:
(331)選擇交叉位置,交換兩個父代染色體對應(yīng)位置的編號,對交叉位置以外的重復(fù)編號按交叉時建立的映射關(guān)系逐一替換,確保交叉產(chǎn)生的子代染色體的合法性,即不含重復(fù)編號;
(332)將As中的染色體兩兩配對,按照自適應(yīng)交叉概率決定是否交叉,交叉后得到子代群體Ac,所述自適應(yīng)交叉概率:
式中:pcmax、pcmin為設(shè)定的交叉概率的上、下限,fˊ為兩條配對染色體中較大的適應(yīng)度值,favg為當代群體的平均適應(yīng)度值,fmax為當代群體的最大適應(yīng)度值,a為常數(shù)。
具體而言,所述的步驟(34)具體包括:
(341)對需要變異的染色體,隨機選擇3個基因位;
(342)再互換它們的位置得到該染色體的一個鄰域,選擇鄰域中適應(yīng)度函數(shù)值最大的作為變異成果;
(343)為增加新染色體的數(shù)量,將As、Ac中的每條染色體都按照自適應(yīng)變異概率決定是否變異,并得到變異的群體Am,所述自適應(yīng)變異概率:
式中:pmmax、pmmin為設(shè)定的變異概率的上、下限,f為當前染色體的適應(yīng)度值。
本發(fā)明的工作原理是:
將車間設(shè)備多行直線布局問題轉(zhuǎn)化為組合優(yōu)化的數(shù)學模型,并確定多個優(yōu)化目標,用加權(quán)法將多個優(yōu)化目標統(tǒng)一為一個評價函數(shù),利用基于Logistic曲線的自適應(yīng)遺傳算法求該函數(shù)較優(yōu)解,再對較優(yōu)解進行適當調(diào)整(改變個別設(shè)備之間的凈間距,其余凈間距仍為0),得到滿足優(yōu)化目標的最優(yōu)解。
相對于現(xiàn)有技術(shù),本發(fā)明具有如下優(yōu)點:
(1)在設(shè)備多行直線布局的數(shù)學建模上,某些文獻認為應(yīng)在設(shè)備之間加上凈間距,其大小采取初始隨機生成、后續(xù)算法優(yōu)化的辦法確定,這給布局帶來了較大的隨意性,增加了運算量,并且結(jié)果變動較大。本發(fā)明在建模時假定凈間距為0,設(shè)備之間的距離僅為Hij;采用自適應(yīng)遺傳算法得到較優(yōu)布局之后,對除最長行外的其他行設(shè)備進行適當調(diào)整,以此實現(xiàn)布局最優(yōu)化。
(2)本發(fā)明采取自適應(yīng)遺傳算法求解設(shè)備布局多目標優(yōu)化問題,編碼方式簡單容易操作,交叉、變異概率根據(jù)個體適應(yīng)度值的大小可以按照Logistic曲線規(guī)律實時調(diào)整,在進化各階段均有不同側(cè)重,在個體多樣性和后期收斂性等方面具有優(yōu)勢。
附圖說明
圖1是本發(fā)明實施例的車間設(shè)備多行直線布局示意圖;
圖2是本發(fā)明實施例的部分映射交叉;
圖3是本發(fā)明實施例的變異產(chǎn)生的鄰域;
圖4是本發(fā)明實施例的車間設(shè)備優(yōu)化布局示意圖;
圖5是本發(fā)明實施例的車間設(shè)備調(diào)整后的優(yōu)化布局示意圖。
具體實施方式
為進一步理解本發(fā)明,下面結(jié)合附圖和實施例對本發(fā)明做進一步說明,但是需要說明的是,本發(fā)明要求保護的范圍并不局限于實施例表述的范圍。
實施例
基于自適應(yīng)遺傳算法的車間設(shè)備多目標優(yōu)化布局方法,包括步驟:
(1)建立車間設(shè)備多行直線布局的數(shù)學模型,即將車間和待布局設(shè)備簡化為矩形,將設(shè)備優(yōu)化布局問題轉(zhuǎn)化為組合優(yōu)化的數(shù)學模型。
具體而言,所述的步驟(1)具體包括:
(11)為分別計算,對多行直線布局做出假設(shè)(如圖1所示),包括:所有設(shè)備形狀均為其包絡(luò)矩形,忽略其細節(jié)形狀及高度;同一行設(shè)備的中心點位于一條直線上,沿X軸正方向依次排列;零件加工工藝確定;各行之間有物流通道,與X軸平行,寬度WP為定值,本實施例中,生產(chǎn)車間長寬為22m×22m,待布局設(shè)備數(shù)n=9,物流通道寬度WP=2m,各設(shè)備尺寸及其完成的工序如表1所示:
表1某生產(chǎn)車間加工設(shè)備的尺寸及完成工序
單位:m
根據(jù)表1統(tǒng)計出設(shè)備之間的訪問次數(shù):
假定零件在加工時損失的質(zhì)量不大,設(shè)備i、j之間單位距離上的物流費用qij可視為定值,不妨設(shè)其為1。多目標優(yōu)化的權(quán)重取w1=w2=0.5;
(12)得到設(shè)備序列s中各臺設(shè)備i的包絡(luò)矩形沿X軸、Y軸尺寸分別為Ai、Bi,通過查閱技術(shù)文檔得到各設(shè)備周邊留出最小安全距離Hi,用于安裝、操作、維修、工件緩沖區(qū),相鄰擺放的兩個設(shè)備i、j之間的最小距離Hij=Hi+Hj,,凈間距為0;
(13)在車間長度L的約束下,當一個設(shè)備序列s確定后,采取自動換行策略,求得該序列s在每行上的設(shè)備分布及設(shè)備中心點的X、Y坐標值。
具體而言,所述的步驟(13)具體包括:
(131)該序列在每行上的設(shè)備分布及設(shè)備中心點X軸坐標值可按如下公式遞推計算:
xs(1)=Hs(1)+As(1)/2 (1)
xs(i)=xs(i-1)+Hs(i-1)s(i)+(As(i-1)+As(i))/2,i=2,3,…,n (2)
當xs(j)+As(j)/2+Hs(j)>L時,將設(shè)備s(j)移至下一行第1位,并按照式(1)、式(2)繼續(xù)計算設(shè)備s(j)、s(j+1)的X軸坐標值;
(132)令hi=Hi+Bi/2,各行設(shè)備的中心點Y軸坐標值可按如下公式確定:y1=max{hs(1),hs(2),…,hs(m)},其中,s(1)、s(2)、…、s(m)為排在第1行的設(shè)備;y2=y(tǒng)1+max{hs(1),hs(2),…,hs(m)}+WP+max{hs(m+1),hs(m+2),…,hs(r)},其中,s(m+1)、s(m+2)、…、s(r)為排在第2行的設(shè)備,WP為物流通道寬度,以此類推,直至求出最后一行設(shè)備的中心點Y軸坐標值。
(2)確定若干優(yōu)化目標及約束條件,采用加權(quán)法將若干優(yōu)化目標統(tǒng)一為單一評價函數(shù)。
具體而言,所述的步驟(2)具體包括:
(21)確定優(yōu)化目標,包括盡可能小的物流費用和盡可能大的面積利用率;
(22)根據(jù)QAP模型可知,求得物流費用:
式中,n為設(shè)備數(shù)量;i、j為設(shè)備編號;pij為設(shè)備i、j之間的訪問次數(shù),可對加工工藝進行統(tǒng)計得出;dij為設(shè)備i、j之間的物流距離,dij=|xi-xj|+|yi-yj|;qij為設(shè)備i、j之間單位距離上的物流費用,根據(jù)生產(chǎn)實際確定,如果運輸方式、工件型號相同,加工過程中工件形態(tài)質(zhì)量變化不大,可視為定值,如設(shè)其為1,求出最小物流費用Fmin=92.4950;
求得面積利用率:
η=St/S,
式中,即所有設(shè)備的矩形面積之和,設(shè)備確定之后為定值;S=(xmax-xmin)(ymax-ymin),即包絡(luò)所有設(shè)備的最小矩形面積,xmax=max{xi+Ai/2},xmin=min{xi-Ai/2},ymax=max{yi+Bi/2},ymin=min{yi-Bi/2},因此,面積利用率最大問題可轉(zhuǎn)化為布局的包絡(luò)矩形面積最小問題,即求Smin=248.3125;
(23)采用加權(quán)法將上述兩個優(yōu)化目標構(gòu)造為一個單一評價函數(shù)并求解:
U=w1F/Fmin+w2S/Smin (3)
w1、w2為加權(quán)因子,均為0.5,根據(jù)實際工程中對于物流和面積各自的側(cè)重程度來確定,要滿足加權(quán)條件w1+w2=1;Fmin、Smin是按單目標優(yōu)化求出的F、S最優(yōu)值,F(xiàn)、S分別除以它們的最優(yōu)值,既消除量綱,又能反映它們偏離最優(yōu)值的程度。
另外,步驟(2)中,所述的約束條件具體包括:所有設(shè)備不超出車間長、寬范圍,即:max{xi+Ai/2+Hi}≤L、max{yj+Bj/2+Hj}≤W;存在物流關(guān)系的兩臺設(shè)備不得跨行布置。
(3)采用基于Logistic曲線的自適應(yīng)遺傳算法求解評價函數(shù)較優(yōu)解。
具體而言,所述的步驟(3)具體包括:
(31)進行染色體編碼,根據(jù)序列中每個設(shè)備的X、Y坐標值及單一評價函數(shù)U所得的適應(yīng)度函數(shù)隨機生成m=100個序列作為算法的初始種群A;
(32)選擇,采取隨機聯(lián)賽選擇方式,聯(lián)賽規(guī)模為N=2,從A中得到包含M=50條染色體的群體As;
(33)交叉,交叉算子選用部分映射交叉(PMX)方式(如圖2所示),將As中的染色體兩兩配對,按照自適應(yīng)交叉概率決定是否交叉,交叉后得到子代群體Ac;
(34)變異,變異算子采用鄰域技術(shù)(如圖3所示),將As、Ac中的每條染色體都按照自適應(yīng)變異概率決定是否變異,并得到變異的群體Am;
(35)進化及終止,將群體As、Ac、Am中的每個個體按照適應(yīng)度值大小排序,選取前m個個體作為當前進化的結(jié)果(更新群體A),然后進行下一次進化,本實施例以進化代數(shù)T=300作為終止條件得一個評價函數(shù)較優(yōu)解為[M6 M5 M7 M1 M9 M8 M4 M2 M3],此時物流費用F=95.6850、布局包絡(luò)矩形面積S=263.1464,圖4為最優(yōu)布局示意圖(矩形內(nèi)數(shù)字為設(shè)備代號,矩形外數(shù)字為該設(shè)備完成的工序),表2為各設(shè)備中心點坐標。第1行與第3行的設(shè)備均沒有物流關(guān)系,滿足約束條件。
表2各設(shè)備中心點坐標
具體而言,所述的步驟(31)具體包括:
(311)采用順序編碼方式,給n個設(shè)備各指定一個1~n之間的整數(shù)編號,以1~n的一個排列作為1條染色體來代表一個設(shè)備序列;
(312)接著求出該序列每個設(shè)備的X、Y坐標值,再根據(jù)所得的單一評價函數(shù)U,適應(yīng)度函數(shù)設(shè)為f=1/U;
(313)隨機生成m=100個序列,作為算法的初始種群A。
具體而言,所述的步驟(32)具體包括:
(321)從A中隨機選取N條染色體,比較它們的適應(yīng)度函數(shù)值大小,將其中最大的保留進入下一代群體;
(322)重復(fù)上述過程M=50次,得到包含50條染色體的群體As
具體而言,所述的步驟(33)具體包括:
(331)選擇交叉位置(圖2中帶框編號),交換兩個父代染色體對應(yīng)位置的編號,對交叉位置以外的重復(fù)編號(圖2中帶下劃線編號)按交叉時建立的映射關(guān)系逐一替換,確保交叉產(chǎn)生的子代染色體的合法性,即不含重復(fù)編號;
(332)將As中的染色體兩兩配對,按照自適應(yīng)交叉概率決定是否交叉,交叉后得到子代群體Ac,所述自適應(yīng)交叉概率:
式中:pcmax、pcmin為設(shè)定的交叉概率的上、下限,取pcmax=0.95、pcmin=0.55,fˊ為兩條配對染色體中較大的適應(yīng)度值,favg為當代群體的平均適應(yīng)度值,fmax為當代群體的最大適應(yīng)度值,常數(shù)a=9.903。
具體而言,所述的步驟(34)具體包括:
(341)對需要變異的染色體,隨機選擇3個基因位(圖3中帶框編號);
(342)再互換它們的位置得到該染色體的一個鄰域,選擇鄰域中適應(yīng)度函數(shù)值最大的作為變異成果;
(343)為增加新染色體的數(shù)量,將As、Ac中的每條染色體都按照自適應(yīng)變異概率決定是否變異,并得到變異的群體Am,所述自適應(yīng)變異概率:
式中:pmmax、pmmin為設(shè)定的變異概率的上、下限,取pmmax=0.15、pmmin=0.05,f為當前染色體的適應(yīng)度值。
(4)對所得較優(yōu)解進行適當調(diào)整,對除最長行以外的其他行設(shè)備之間的凈間距進行適當調(diào)整,進一步減小設(shè)備之間的物流距離和包絡(luò)矩形面積,得到滿足優(yōu)化目標的設(shè)備布局最優(yōu)解。分析圖4可知,第3行中M2、M3分別與第2行中M1、M8有物流關(guān)系,第1行中M5、M7分別與第2行中M9、M8有物流關(guān)系。因此,對布局進一步調(diào)整如下:(1)M2、M4互換位置,且使M2與M1的中心點對齊;(2)M6、M5、M7整體右移,使M7與M8的中心點對齊(A7<A8,M7不會出界)。調(diào)整之后中心點坐標如表3所示,圖5為調(diào)整后的布局示意圖。經(jīng)計算,調(diào)整后布局物流費用F=89.3800、布局包絡(luò)矩形面積S=256.1104,物流費用和占地面積都有所下降。兩處調(diào)整,實際上是加大了M2與M8、M6與車間邊緣的凈間距,其余設(shè)備間的凈間距依然為0,確保了布局的緊湊性。
表3調(diào)整后各設(shè)備中心點坐標
本發(fā)明的上述實施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對本發(fā)明的實施方式的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明權(quán)利要求的保護范圍之內(nèi)。