郭 晨,李龐聰,王 磊
(1 武漢理工大學 安全科學與應急管理學院,湖北 武漢 430070;2.武漢理工大學 機電工程學院,湖北 武漢 430070)
近年來,國內(nèi)外學者針對產(chǎn)品配置問題展開了大量的研究。張雷[1]等將綠色產(chǎn)品需求轉化為配置約束,并在回溯算法中加入約束過濾模塊與建議性約束滿足模塊,求解豆?jié){機的配置方案。Dong等[2]通過將結構化產(chǎn)品的結構知識轉化為動態(tài)約束配置里的編碼,減小了DCSP(distributed constraint optimization problem)中編碼變量的數(shù)量,并采用回溯搜索求得最優(yōu)解。趙燕偉等[3]提出根據(jù)不同的局部相似度類型,為實例動態(tài)賦權的可拓展相似度計算方法,并結合客戶偏好計算配置方案總體相似度。肖剛等[4]提出了一種加權歐式距離計算方法求解待配置產(chǎn)品與歷史實例的相似性。Wang等[5]提出了一種基于灰度粗糙模型的客戶需求分析方法,將不確定的客戶需求轉化為確定的產(chǎn)品技術特征及技術特征重要度,采用了一種無監(jiān)督的自學習神經(jīng)網(wǎng)絡技術-自組織映射方法(self-organizing map, SOM)對案例庫中的案例進行聚類以縮小檢索范圍,提出了一種基于模糊相似度優(yōu)先比的相似度度量方法來獲取相似的案例。Wei等[6]以性能、成本、時間為目標對產(chǎn)品進行配置,采用NSGA-II(non-dominated sorted genetic algorithm-II)算法求解配置方案,提出了一種基于模糊度的配置方案評估與選擇機制在Pareto前沿中選擇最優(yōu)方案。Tang等[7]建立了一種同時考慮用戶滿意度與產(chǎn)品全生命周期碳排放的模型,并采用遺傳算法求解最優(yōu)配置方案。
筆者在傳統(tǒng)產(chǎn)品配置的研究目標上,考慮醫(yī)療器械生產(chǎn)過程中,回料對產(chǎn)品可靠性與成本的影響,建立了精密過濾輸液器產(chǎn)品配置優(yōu)化模型。針對本模型決策變量空間與解空間過大的問題,提出了一種改進NSGA-III算法,增加了種群混沌映射初始化與局部搜索算子,改善了NSGA-III算法在局部搜索能力上的不足。最后,結合某醫(yī)療器械企業(yè)的產(chǎn)品實際案例,通過與NSGA-III算法、CS(cuckoo search)算法、Pareto-IMODCS(pareto-inproved multiple-objective discrete cu ckoo search)算法進行對比,證明了改進NSGA-III的可行性與優(yōu)越性。
輸液器在部件的生產(chǎn)過程中,不可避免地會生產(chǎn)出帶有污點、外觀變形等不合格缺陷的部件。不合格的部件經(jīng)過質檢篩選后,部分會重新粉碎成塑料原料(經(jīng)過重新粉碎的塑料原料定義為回料)。研究表明,回料過程中的后處理會引起ABS中的聚丁二烯斷裂,降低回料與原料混合后的沖擊強度[8]、抗拉強度、抗扭強度[9]等機械性能,造成零部件可靠性下降。生產(chǎn)實踐的統(tǒng)計數(shù)據(jù)顯示,零部件的可靠性隨回料增加呈線性降低的趨勢。精密過濾輸液器任意模塊的失效都將導致產(chǎn)品整體的失效,因此精密過濾輸液器是一個串聯(lián)系統(tǒng)。串聯(lián)系統(tǒng)的模型如圖1所示。
圖1 串聯(lián)系統(tǒng)模型可靠性框圖[10]
(1)
式中:Rt為配置方案可靠性;n為模塊數(shù)量;ni為第i個模塊的實例數(shù)量;bij為0-1整數(shù)變量,表示第i個模塊的第j個實例是否被選中參與配置;R(mij)為實例mij的可靠性。
R(mij)=Rij-αij·rij
(2)
式中:αij為常數(shù),表示回料比例與實例可靠性之間的相關性;Rij為第i個模塊的第j個實例在不使用回料情況下的可靠性;rij第i個模塊的第j個實例的回料比例。
配置方案的總成本優(yōu)化數(shù)學模型為:
pW(mij)(1+rij(θ-1)))
(3)
式中:Ct為配置方案的總成本;W(mij)為第i個模塊的第j個實例需要的原材料數(shù)量;p為原材料單位價格;Cz(mij)為第i個模塊的第j個實例的制造成本;θ為配置方案中使用回料時計算成本的折扣比例。
式(3)表示配置方案總成本,應盡可能小??偝杀居膳渲梅桨傅牟牧铣杀竞统牧弦酝獾乃兄圃斐杀緲嫵?,其中θ為經(jīng)驗值,由設計人員與財務人員分析和歸納歷史數(shù)據(jù)后確定。
配置方案的總生產(chǎn)時間應盡可能短,其優(yōu)化教學模型為:
(4)
式中:T(mij)為第i個模塊的第j個實例的生產(chǎn)時間;Tt為方案總生產(chǎn)時間。
配置方案的可靠性在實際生產(chǎn)中應盡可能高。配置方案的可靠性優(yōu)化模型為:
(5)
為了便于計算,統(tǒng)一所有目標函數(shù)為最小值。將最大化可靠性目標函數(shù)做取反處理,得到對應的最小化可靠性函數(shù)minNRt=-Rt。
模型的不等式約束如下:
F(xi)={minCt,minTt,minNRt}
g1≤0
g2=RSd+RSr
(6)
式中:xi=[xi1,xi2,…,xin]為配置問題的一個解,n為產(chǎn)品的模塊數(shù)量;g1為成本、原材料等約束;g2為配置方案的實例依賴約束和排斥約束的總違反次數(shù),g2=0時表示配置方案滿足實例依賴排斥約束,g2值越大表示配置方案在該約束上的違反程度越大;RSd為實例間的依賴約束,RSr為實例間的排斥約束。
采用懲罰函數(shù)法與多目標優(yōu)化法相結合的混合方法,以懲罰函數(shù)作為當前解對約束條件違反程度的度量,將其作為第四維目標函數(shù)求解最小值。個體違反約束條件程度的度量函數(shù)定義如下:
(7)
(8)
式中:cj=max(0,gj(x)),j=1,2,…,k。
顯然,約束違反度越低,表示配置方案對約束的滿足程度越高,CV=0的配置方案沒有違反任何約束,為完全可行方案。此時,式(6)中的目標函數(shù)F(x)可轉化為:
F1(xi)={minCt,minTt,minNRt,minCV}
(9)
產(chǎn)品配置方案以一段整數(shù)編碼的染色體表示。染色體信息由兩部分構成,前半部分代表可配置模塊,基因值的取值范圍由可配置實例的索引值組成。染色體信息的后半部分代表染色體前半部分選中的模塊實例在生產(chǎn)中使用的回料比例。產(chǎn)品配置方案的基因編碼如圖2所示。
圖2 產(chǎn)品配置方案基因編碼
2.2.1 選擇算子
為保留種群中的優(yōu)秀個體,采用一種精英保留策略與錦標賽機制相結合的選擇算子。在生成交配池過程中,優(yōu)先將非支配序為1的個體放入交配池,在剩下的父代中通過錦標賽機制選擇更優(yōu)秀的個體,直到交配池數(shù)量達到標準種群大小。
2.2.2 交叉算子
采用單點交叉的方式,從交叉操作池中隨機選出兩個染色體,生成一個隨機值,根據(jù)隨機值的大小是否滿足交叉概率來決定是否進行交叉操作。隨機指定一個位置作為參與交叉操作的父代染色體的交叉點,交換父代染色體在交叉點上的基因值,產(chǎn)生子代染色體,交叉過程如圖3所示。
圖3 交叉操作
2.2.3 變異算子
采用隨機多點多項式變異算子,在交叉生成的子代染色體上,隨機選取1到L個位置進行多項式變異,L取決策變量個數(shù)的三分之一。多項式變異公式為:
xk′=xk+δ(uk-lk)
(10)
δ=
(11)
式中:δ1=(xk-lk)/(uk-lk);δ2=(uk-xk)/(uk-lk);uk、lk為變量xk的上下限;u為[0,1]區(qū)間內(nèi)的隨機數(shù);ηm為常數(shù),表示分布指數(shù),此處取11。
變異操作如圖4所示。
圖4 變異操作
2.2.4 局部搜索算子
針對NSGA-III的不足,筆者提出了一種基于powell法的自適應局部搜索算子。在算法迭代初期,較大的步長可以在全局范圍內(nèi)搜索,使計算結果快速靠近Pareto前沿。隨著迭代次數(shù)的增加,步長逐漸縮短,個體在自身附近搜索,提高了種群逼近Pareto前沿的能力。根據(jù)迭代次數(shù)自適應調(diào)整步長。步長ψ計算公式為:
ψ=0.1+0.9exp^(-3g/G)
(12)
式中:g為當前迭代次數(shù);G為總迭代次數(shù)。
局部搜索算子的步驟為:
步驟1檢查是否滿足局部搜索條件,若滿足,進行后續(xù)操作;若不滿足,直接進入下一次迭代。根據(jù)當前迭代次數(shù),確定搜索步長的范圍ψ。
步驟2篩選種群中的Pareto第一前沿個體,以個體作為搜索中心Q0,確定一組方向Di(i=1,2,…,n),n為決策變量個數(shù);
步驟3從初始點Q0出發(fā),沿著方向Di進行一維搜索,得到結果Qi,局部搜索變異公式為:
xk′=xk+rand(ψ)(uk-lk)
(13)
式中:rand(ψ)為取值在[-ψ,ψ]之間的隨機數(shù)。
若Qi不在變量上下限范圍內(nèi),對Qi進行越界處理,越界處理公式為:
(14)
步驟4將每一次的搜索結果與搜索中心合并后,根據(jù)選擇算子,選取出最優(yōu)個體代替Q0。
筆者采用6個帶偏約束的數(shù)值MOEA(multi-objective evolutionary algorithm)測試函數(shù)集[11]作為測試函數(shù),并在所建立的數(shù)學模型中加入了一個隨機算例。改進NSGA-III算法與非支配排序遺傳算法III、布谷鳥搜索算法CS、基于Pareto改進的多目標離散布谷鳥搜索算法(Parteo-IMODCS)[12]4個算法在每個測試函數(shù)下獨立運行10次,取每次運算的ER(error ratio)和IGD(inverted generation distance)計算平均值作為測試結果。如表1所示,在多數(shù)測試函數(shù)下,改進NSGA-III算法的評價指標優(yōu)于其他3種算法,證實了改進算法的合理性與有效性。
表1 算法對比測試結果
針對本文建立的精密過濾輸液器產(chǎn)品配置設計問題多目標多約束優(yōu)化模型,以某醫(yī)療器械制造企業(yè)產(chǎn)品為例,企業(yè)生產(chǎn)的精密過濾輸液器共有15個模塊。采用筆者提出的改進NSGA-III算法進行仿真求解,獲得配置方案的Pareto前沿。算法運行環(huán)境為Windows 10,Intel(R)Core(TM) i5-8400 CPU @2.80 GHz,16 GB內(nèi)存,編程語言為Matlab 2018b。
取企業(yè)期望利潤率β=20%,約束條件為客戶可接受的價格Ce=16.7,客戶可接受的可靠性Re=200,客戶可接受的生產(chǎn)時間Te=0.998,可用原材料庫存Wy=25,可用回料庫存Wh=12,模塊1的實例3與模塊4的實例3為依賴關系(x1,3-x4,3=0),模塊4的實例3與模塊9的實例2為互斥關系(x4,3+x9,2≤1)。優(yōu)化結果如圖5和圖6所示,可以看到Pareto前沿較為均勻地分布在可行解空間中,成本、時間、可靠性3個目標函數(shù)的平均值隨著迭代次數(shù)的增加而變化,并隨著算法的尋優(yōu)逐步收斂,最終進化曲線趨于平直線。
圖5 精密過濾輸液器產(chǎn)品配置優(yōu)化解集
圖6 各目標函數(shù)均值迭代曲線圖
在傳統(tǒng)的產(chǎn)品配置優(yōu)化設計研究基礎上,針對醫(yī)療器械高可靠性的特點,將可靠性作為產(chǎn)品配置方案求解的目標函數(shù)建立模型。針對實際產(chǎn)品配置中存在的成本、時間等約束,采用懲罰函數(shù)法與多目標優(yōu)化法結合的方式處理約束條件,通過約束違反度將約束條件轉化為目標函數(shù)求解最小值。為了從大量的產(chǎn)品配置方案中快速獲得滿足企業(yè)與顧客需求的配置方案,筆者提出了一種改進NSGA-III算法求解產(chǎn)品配置問題。該算法在傳統(tǒng)NSGA-III算法的基礎上,加入了混沌搜索生成初始種群,保證了初始種群在決策變量空間上的遍歷性與均勻性。在種群進化過程中加入多點多項式變異與基于powell法的自適應局部搜索算子,增強了NSGA-III算法的局部搜索能力。通過與NSGA-III、CS、Pareto-IMODCS進行對比,驗證了筆者提出的改進NSGA-III算法求解結果的多樣性與收斂性。最后,將改進NSGA-III算法應用于某醫(yī)療器械制造企業(yè)的實際案例,有效地獲得優(yōu)化的精密過濾輸液器配置方案。