唐志強,李 銳
遼寧工業(yè)大學 電子與信息工程學院,遼寧 錦州 121001
在現(xiàn)代物流配送系統(tǒng)的構建中,如何構建高效、綠色、可靠的配送網(wǎng)絡來降低物流成本,減少環(huán)境污染和提高安全性對于物流系統(tǒng)可持續(xù)發(fā)展至關重要。合理的配送中心選址和車輛路徑規(guī)劃對于物流配送系統(tǒng)的有效運作和降低物流成本具有重要作用。由于單獨考慮選址問題和車輛路徑問題都很難達到全局優(yōu)化的效果,而集成的選址-路徑規(guī)劃問題(LRP)同時包括戰(zhàn)略和戰(zhàn)術層面,能夠實現(xiàn)整體優(yōu)化。目前,國內外學者對LRP問題進行了廣泛的研究。
近年來,隨著環(huán)境污染的加劇,一種“低能耗、低排放”的綠色物流受到了廣泛的關注。Dukkanci等[1]首次將低碳路徑與低碳選址相結合,提出了最小化碳排放的選址-路徑問題模型;Toro等[2]研究了多目標綠色選址-路徑問題,建立了最小化燃油消耗及總成本的多目標混合整數(shù)線性規(guī)劃模型;Wang等[3]研究了綠色、帶時間窗的取貨和派送兩階段選址-路徑問題,并設計一個基于拉格朗日松弛的啟發(fā)式算法來求解模型;趙燕偉等[4]提出了一種綜合考慮多車型和同時取送貨的低碳選址-路徑問題,并構建三維指數(shù)混合整數(shù)規(guī)劃模型,同時設計一種進化式超啟發(fā)式算法進行求解;Zhang等[5]研究了帶時間窗的時間依賴綠色選址路徑問題,并設計了一種兩級超啟發(fā)式算法進行求解。
在現(xiàn)實世界中,客戶的需求可能是模糊的或者不確定。Nadizadeh等[6]于2013年首次提出建立需求不確定的選址-路徑問題模型并對其進行求解;Ghaffari-Nasab等[7]研究了模糊選址路徑問題,并設計了一種混合模擬退火算法進行求解;Nadizadeh等[8]應用螞蟻算法求解能力受限和模糊需求的選址-路徑問題;Pekel等[9]設計一種結合可變鄰域搜索和進化局部搜索的啟發(fā)式搜索算法,解決了模糊需求的選址-路徑問題。
在實際的物流配送過程中,由于供求關系和外部環(huán)境因素的影響,客戶需求、配送中心和運輸路徑的可靠性在各個運營周期可能不同,因此考慮多周期選址路徑問題更符合現(xiàn)實。Wang等[10]針對兩級多周期選址路徑問題,建立了一個最小化總成本和車輛數(shù)量的多目標LRP模型,并設計了一種兩階段混合算法來求解;Cheng等[11]在災后垃圾清理任務中引入了多周期雙梯度選址-路徑問題,建立了最小化成本和清理時間的LRP模型,并用改進的遺傳算法進行求解;Saffarian等[12]針對災后救助工作,考慮了一個包含災害管理周期的多目標LRP模型,同時使用全局性準則方法將其轉化為單目標進行求解。
總的來說,目前關于LRP問題的研究已經(jīng)取得了大量的成果。與現(xiàn)有的研究相比,本文在LRP問題的研究中同時考慮了不確定、可靠性、多周期和綠色四個因素,并基于模糊可信度理論建立了問題模型。此外,本文對基本的遺傳算法進行了改進,設計了一種混合遺傳算法HGA,實驗表明該算法能在有限的時間內提供較優(yōu)的結果。
物流配送網(wǎng)絡如圖1所示,包括候選配送中心、運輸車輛、客戶和運輸線路。運輸車輛從配送中心出發(fā),按照規(guī)劃的配送線路依次服務該線路上的所有客戶,最后返回對應的配送中心。
圖1 物流配送網(wǎng)絡Fig.1 Logistics distribution network
模型假設條件如下:
(1)候選配送中心的數(shù)量、位置、開設成本、運營成本、能力及其在各個周期的可靠性已知;
(2)車輛的數(shù)量、固定運營成本、運輸能力、單位距離運輸成本和單位距離折舊成本已知,并且每輛車只能從一個配送中心出發(fā),最終回到該配送中心;
(3)客戶的數(shù)量、位置和需求已知,并考慮需求為模糊變量;
(4)每個客戶的需求最多由一輛車服務一次;
(5)任意兩點之間的距離及其在各個周期的可靠性已知;
(6)單位燃油成本已知。
考慮模糊需求的多周期可靠性綠色LRP問題是指通過開設配送中心和規(guī)劃各個周期的車輛運輸路徑來最小化物流配送成本和燃油消耗成本,同時滿足各周期內車輛運輸路徑的可靠性及模糊需求約束。
模型符號定義如下:I表示候選配送中心集合,J表示客戶集合,K表示車輛集合,T表示周期集合。OCi、MCi、Ui和Rti分別表示配送中心i∈I的開設成本、運營成本、能力及其在周期t∈T的可靠性;Hk、Pk、TCk和DCk分別表示車輛k∈K的固定運營成本、運輸能力、單位距離運輸成本和單位距離折舊成本;Dsl和rstl分別表示任意兩點s∈M和l∈M之間的距離及其在周期t∈T的可靠性,M=I?J;表示客戶j∈J在周期t∈T的 需 求,且為 三 角 模 糊 數(shù)Fuel表示單位燃油成本。
決策變量定義如下:xtslk∈{0,1},如果周期t∈T車輛k∈K從s∈M到l∈M,則xtslk取值為1,否則取值為0;yitk∈{0,1},如果周期t∈T車輛k∈K分配給配送中心i∈I,則yitk取1,否則yitk取0;zi∈{0,1},如果配送中心i∈I開設,則zi取值為1,否則zi為0。
引入如下輔助變量:f stlk≥0表示在周期t∈T車輛k∈K在點s∈M和點l∈M之間的運輸量。
基于以上符號和變量的定義,建立考慮模糊需求的多周期綠色選址-路徑問題模型如下:
目標函數(shù)(1)為最小化總成本,包括配送中心的開設成本及各個周期內配送中心的運營成本、車輛的固定運營成本、車輛的運輸成本、燃油消耗成本;其中,F(xiàn)stlk表示周期t車輛k在點i和點j之間的運輸油耗,計算詳見1.3節(jié);式(2)為車輛路徑的可靠性約束,γ表示要求的可靠性水平;式(3)表示每個周期內車輛與配送中心的分配關系;約束(4)表示未開設的配送中心在各個周期內都沒有車輛駛出;約束(5)表示開設的配送中心必須有車輛駛出;式(6)表示在每個周期內每輛車從一個點駛入,必須要從該點駛出;式(7)避免客戶之間形成子環(huán)路;式(8)保證配送中心之間沒有車輛路徑;式(9)表示在每個周期內每輛車輛至多服務于一個配送中心;式(10)表示在每個周期內每個客戶最多只能由一輛車服務;式(11)表示在每個周期內車輛能力的機會約束,α1表示要求的置信水平;式(12)表示每個周期內配送中心能力的機會約束,α2表示要求的置信水平;式(13)和(14)保證客戶點兩端的流量平衡;式(15)~(17)為二值變量約束;式(18)為產(chǎn)品運輸量的非負約束。
車輛在運輸過程中,裝載量和行駛距離等因素都會影響燃油消耗。本文采用文獻[13]的方法來計算油耗,運輸車輛的燃油消耗量F可按照式(19)進行計算:
其中,G為道路坡度因子;D為車輛的行駛距離;f為載貨量;a和b分別為燃油消耗參數(shù)。
基于以上油耗計算方法,周期t內車輛k在點s∈M和點l∈M之間的油耗為:
據(jù)此,燃油消耗成本可按如下計算:
當xtslk=1,?s∈M,?l∈J,?k∈K,?t∈T時,表示周期t內的車輛k經(jīng)過s和l之間線路,由約束(6)可得,根據(jù)文獻[14]則有:
對于?s∈I,?l∈J,?k∈K,?t∈T,當xtslk=1時,根據(jù)式(7)可推出,則有:
莫莉在克里斯蒂娜不提防時向她的側身踢了一腳,克里斯蒂娜后背著地癱在那里??吹竭@兒,艾爾突然松開手,把我拉到他身邊緊緊地靠著。我咬緊牙不想哭出來。第一天晚上,雖然我對艾爾的哭泣無動于衷,但我還不是鐵石心腸的人。此時此刻,看著克里斯蒂娜痛苦地捂著胸肋,我真想沖上去擋在她們中間。
由于經(jīng)典LRP問題是NP-hard問題,而考慮模糊需求的多周期綠色選址-路徑問題是經(jīng)典LRP問題的擴展問題,也屬于NP-hard問題,因此設計啟發(fā)式算法對該問題進行求解。
遺傳算法(GA)作為經(jīng)典的啟發(fā)式算法,已經(jīng)在組合優(yōu)化領域取得了較好的成果。本文采用整數(shù)編碼,針對本文問題的特點,設計了一種混合進化算法HGA進行求解。在該算法中,優(yōu)化了交叉算子和設計了兩階段變異操作,提高了算法的搜索能力。
HGA算法的主要步驟如下:
步驟1按照2.2節(jié)中編碼方法隨機初始化種群;
步驟2對個體進行解碼,并計算個體適應值(詳見2.2);
步驟3更新全局最優(yōu)解;
步驟4判斷是否滿足終止條件,如果滿足,輸出最優(yōu)解并結束運行,否則,繼續(xù)運行;
步驟5基于輪盤賭選擇法進行選擇操作;
步驟7個體變異(詳見2.4節(jié)),然后返回步驟2。
算法的具體流程如圖2所示。
圖2 算法流程圖Fig.2 Algorithm flowchart
本文采用整數(shù)向量對個體進行編碼。向量由三個部分組成,第一部分表示客戶的服務順序,第二部分表示客戶所屬的車輛,第三部分表示車輛所屬的配送中心。假設當前有5個客戶、3輛車和2個配送中心,則編碼如圖3所示。
圖3 個體編碼Fig.3 Individual code
在圖3中,根據(jù)第二部分可知,客戶1和4由車輛1服務,客戶2和3由車輛2服務,客戶5由車輛3服務。由第三部分知車輛1和2屬于配送中心1,車輛3屬于配送中心2,再結合第一部分客戶的服務順序即可確定所有每輛車的行駛路徑。
對于解碼得到的車輛路徑,首先檢測是否滿足本文問題模型中的所有約束條件,如果不滿足,則無需通過式(1)計算最終結果,直接設為一個極大值,否則通過式(1)計算最終的成本。
采用部分映射交叉方法,個體通過與全局最優(yōu)個體交叉來更新。如圖4所示,首先在編碼的每個部分都選擇兩個交叉位置,然后將個體與全局最優(yōu)解交叉得到新個體。
圖4 交叉操作Fig.4 Cross operation
在遺傳算法早期階段,交叉概率較小,可以提高全局搜索能力;在后期階段,交叉概率較大,可以提高局部搜索能力,本文采用以下方法優(yōu)化交叉算子。
其中,Pc表示交叉概率;Gen和MAXGEN分別表示當前迭代次數(shù)和最大迭代次數(shù);Pcmin和Pcmax分別表示最小交叉概率和最大交叉概率。
變異操作分為兩個階段,低概率的變異操作1用于保持種群的多樣性,高頻率的變異操作2用于擴展算法的搜索空間。變異方法1采用個體內部兩位互換方法。如圖5所示,在編碼的每個部分都隨機選擇兩個變異位置,然后把這兩個變異位置的值互換。
圖5 變異操作1Fig.5 Mutation operation 1
變異操作2如圖6所示。在編碼的第一部分,采用個體內部兩位互換的方法,在編碼的第二部分隨機地選取一個位置,然后在1到最大車輛數(shù)量之間隨機地獲取一個整數(shù)來替換該位置的數(shù)值,編碼的第三部分更新操作與第二部分更新類似。
圖6 變異操作2Fig.6 Mutation operation 2
為了驗證模型的合理性和HGA算法的有效性,對隨機產(chǎn)生的不同規(guī)模的算例進行測試。所有算法均采用Matlab編程實現(xiàn),且實驗環(huán)境為AMD Core i5 2.4 GHz CPU,內存16 GB RAM,操作系統(tǒng)Windows 10。
表1給出不同算例的規(guī)模,包括配送中心的數(shù)量、客戶數(shù)量、車輛數(shù)量和周期數(shù)量。算例的參數(shù)設置如下:配送中心的坐標和客戶點的坐標均在[?100,100]之間隨機生成;車輛的運輸能力Pk為900,固定運營成本Hk取值為1 200,每公里折舊成本DCk為0.28,單位距離運輸成本TCk為1;配送中心的能力Ui為[2 000,3 000]之間的隨機值,開設成本OCi取值范圍為[10 000,15 000]、運營成本MCi取值范圍為[4 000,6 000],在各個周期的可靠性Rti為[0.9,1]之間的隨機值;客戶的需求,其中p1tj在[100,120]之間隨機取值,在[120,140]之間隨機取值,p3t j在[140,160]之間隨機取值;任意兩點之間線路在各個周期的可靠性ritj為[0.9,1]之間的隨機值;單位燃油成本Fuel取值為7.99;道路坡度因子G取值為1;燃油消耗系數(shù)和b分別取值為0.006 208和0.212 5[13]。種群數(shù)量為20,迭代次數(shù)為300。
表1 算例規(guī)模Table 1 Case scale
為了驗證HGA算法的有效性,對算例I1~I5進行求解,并將結果與標準GA算法以及優(yōu)化DE算法[15]進行比較。對于所有算例,置信水平α1和α2設置為0.5,可靠性水平γ設置為0.3。其中,HGA算法的參數(shù)設置為交叉概率最大值0.9、最小值0.1,變異概率為0.05、0.9;GA算法的參數(shù)設置為交叉概率0.9、變異概率0.05;DE算法的參數(shù)設置為參照文獻[15]。
對于每個算例,每種算法分別運行10次。表2給出幾種算法求解的最優(yōu)值、最差值、平均值、平均偏差率及平均CPU時間的比較。由表2可見,對于不同規(guī)模的算例,HGA算法的最優(yōu)值、平均值、最差值、平均偏差率和運行時間均優(yōu)于GA算法和優(yōu)化DE算法。其中,從平均偏差率來看,HGA算法的變化范圍為0.045 4~0.096 1,而GA算法為0.384 4~0.604 5,DE算法為0.2~0.313 0,可見HGA算法的平均偏差率明顯優(yōu)于其他算法。綜上可見,HGA算法能夠對不同規(guī)模問題有效求解。
表2 不同規(guī)模算例下HGA與GA、DE結果對比Table 2 Comparison of results of HGA,GA and DE under different scale calculation examples
為了驗證置信水平α1和α2以及可靠性水平γ對算法性能和求解結果的影響,對算例I3進行測試。其中,α1和α2在0.1~0.95范圍內取值,γ在0.1~0.7范圍內取值。對于不同置信和可靠性取值,每種算法分別求解10次。表3給出不同置信水平和可靠性下幾種算法性能的比較。由表中數(shù)據(jù)可知,對于不同可靠性水平和置信水平,HGA算法仍然能保持穩(wěn)定,并且求解效果優(yōu)于GA和DE。
表3 不同置信水平和可靠性水平下算法性能比較Table 3 Comparison of algorithm performance under different confidence levels and reliability levels
為了研究置信水平α1、α2和γ對總成本的影響,對算例I3進行測試,具體分析不同置信水平和可靠性水平對總成本的影響。其中可靠性水平γ在0.1~0.7范圍內取值,α1和α2在0.1~1.0范圍內取值。由表4可知,對于一定的α2和α1值,隨著γ值的增加,使用車輛的數(shù)量和運輸距離增加,導致運輸費用、車輛固定成本、油耗成本和車輛折舊成本增加,并最終導致總成本的增加;對于一定的γ值,隨著置信水平α2和α1的增加,配送中心的開設成本、車輛的固定成本、運輸成本、油耗成本以及車輛折舊成本單調遞增。
表4 不同置信水平和可靠性水平下算例I3的詳細結果Table 4 Detailed results of example I3 under different confidence levels and reliability levels
本文對基本的選址路徑問題進行了拓展,考慮包含模糊需求、多周期、可靠性和綠色的選址-路徑問題,并建立了相應的優(yōu)化模型,同時設計了一個混合的遺傳算法對模型進行求解。在該算法中,使用自適應參數(shù)替代固定值參數(shù)和增加了一個高頻率變異操作,在保持種群多樣性的同時擴展了算法的搜索空間。最后,將HGA算法、GA算法和DE算法分別應用到求解不同規(guī)模算例的仿真實驗中,結果表明了HGA算法在不同規(guī)模的算例中均優(yōu)于GA算法和DE算法。本文最后分析了不同置信水平和可靠性水平對總成本的影響,結果表明置信水平和可靠性水平都會對總成本造成較大的影響。