沈 澄,方 偉
(1.浙江工商職業技術學院,浙江 寧波 315012;2.寧波永耀信息科技有限公司,浙江 寧波 315020)
數學建模優化物流運輸路徑可行解的改進算法及其應用
沈 澄1,方 偉2
(1.浙江工商職業技術學院,浙江 寧波 315012;2.寧波永耀信息科技有限公司,浙江 寧波 315020)
針對帶時間窗物流運輸最優化路徑選擇問題,基于概率分布算理的共同機制,將遺傳算法全局搜索優勢與模擬退火算法局部搜索優勢有機整合,有效規避二者算法尋優性能的不足,使構建的改進算法兼顧優越的全局搜優能力和計算效率。針對9個目標點物流運輸路徑優化問題的可行解,展開算法應用的試驗驗證。結果顯示,若目標點數量較少能夠求得最優解,若目標點數量較多則能夠求得滿意解。
物流運輸;路徑優化;目標函數;最優解;適應度;可行解
在物流運輸業中存在許多優化策略問題,運輸路徑的優化作為NP-C問題,計算復雜性很高,難以通過全局搜索實現最優化求解[1]。眾所周知,遺傳算法(GA)具有突出的全局搜索能力,但在實際運用中時常早熟收斂,后期搜索效率不高,為此許多學者采用蟻群算法、粒子群算法等對遺傳算法進行混合改進,取得了較好的尋優效果。模擬退火算法(SA)具有優秀的局部搜索能力,本文根據物流運輸的特點,建立相應的數學模型,將模擬退火算法置入遺傳算法,優化改進遺傳算法,并展開算法應用的試驗驗證。
將貨物從集散中心配送到多個目標,先要確定每個目標的位置和需求量、選擇最優配送路徑,達到運輸效率高、成本最低,還需滿足[1-2]:①每條線路的貨運量不得超出運輸車輛的裝載量;②每條線路目標點的需求必須滿足,且僅由一輛車在限定時間內送貨;③每一運輸車輛自集散中心出發,均必須在限定時間內返回集散中心。為此設該運輸系統中的目標點集合i=0表示集散中心,車輛數集合,引入決策變量,,其中i,j∈N,i≠j,k∈H。假設每條配送路徑對應一輛貨車,且一輛貨車可以滿足這條線路上目標點的配送要求,每一目標僅由單一車輛完成一次配送,建立數學模型的相關參數見表1。

表1 物流運輸路徑優化的數學模型參數
那么,目標函數[2-3]:


模型中(1)為目標函數,(2)至(12)為約束條件。(2)規定集散中心是運輸車輛的起點與終點;(3)規定派出的車輛數不超過擁有的車輛數;(4)規定車輛不能從本地到本地;(5)規定車輛路徑連續約束;(6)和(7)規定每一目標點恰好被一輛車服務一次;(8)規定每一路徑貨運總量的車載重約束;(9)規定車輛運輸準時的時間約束;(10)至(12)為時間窗約束。
3.1 模擬退火算法(SA)
該算法來自熱力學中的固體退火原理,固體加熱溫度至充分高,其內能增大,而冷卻過程在常溫時達到基態,內能減為最小。N.Metropolis于1953年提出,用固體退火模擬組合優化問題,將內能E模擬為目標函數f,溫度T演化成控制參數t,由初始解s和控制參數初值t開始,對當前解重復“產生新解→計算目標函數差→接受或舍棄”的迭代,并逐步衰減t值,當溫度終止在低溫時內能極小,即目標函數值最小,此時算法終止的當前解即為近似最優解。
這是基于Monte-Carlo迭代求解策略的一種隨機尋優算法,搜優過程隨著溫度的不斷下降,賦予一種時變且最終趨于零的概率突跳性,在解空間中隨機尋找目標函數的全局最優解,具有跳出局部最優陷阱的能力,隨著溫度的不斷下降至最低溫度,搜索過程以概率l收斂于最優解,即在局部的最優解能概率性地跳出并最終趨于全局最優,具有概率的全局優化性能。
設目標函數為min f(Si),Si∈S,S是離散有限狀態空間(即可行解集合),求解過程如下:
(1)初始化,任選初始解Si∈S,給定初始溫度T0足夠高,終止溫度Tf足夠低,令迭代計數器k=0,Tk=T0。
(2)隨機產生一個鄰域解,Sj∈N(Si),N(Si)表示Si的鄰域,計算目標值增量,Δf=f(Sj)-f(Si)。
(3)若Δf<0,令Sj=Si轉到第四步,否則產生一個隨機數ξ∈U(0,1),若exp(-Δf/Tk)>ξ,則令Sj=Si。
(4)若達到熱平衡轉到第五步,否則轉到第二步。
(5)k=k+1降低Tk,若Tk 3.2 遺傳算法(GA) 該算法1975年由美國J.Holland教授提出,它是借鑒生物界適者生存的遺傳機制形成的隨機搜索最優解的方法。該算法采用概率化的尋優方法,能自動獲取和指導優化的搜索空間,自適應地調整搜索方向,具有內在的隱并行性和更好的全局尋優能力,可使問題的解一代又一代地優化逼近最優解。GA應用遺傳算子經選擇、交叉、變異運算,模擬生物種群自然選擇、優勝劣汰、不斷進化的規律,逐代產生出代表新的解集的種群,后生代種群比前代更加適應環境,解碼末代種群的最優個體作為近似最優解。求解過程如下: (1)初始化求解空間。設進化代數計數器k=0,最大進化代數K,隨機生成M個個體作為初始種群的染色體并進行編碼。 (3)個體評價。計算適應度函數Fit(Si)的值,即當前種群Z(k)中各Si的適應度。 (4)遺傳算子操作。經過選擇、交叉、變異運算生成子代種群Z(k+1)。 (5)終止條件判斷。若k=K,則以進化過程中所得到的具有最大適應度的個體作為最優解輸出;否則返回第三步。 選擇算子選擇Fit(Si)值較大的個體提高個體被復制的概率,促進算法收斂速度加快,優秀個體Si被選擇的概率為,Fiti越大Pi就越大;交叉算子置換兩個父系基因,促進算法搜索能力提升,搜索得到更優的個體(或解);當交叉運算已接近最優解鄰域時,變異算子的局部隨機搜索能力能加速向最優解收斂,同時維持群體的多樣性,這有利于促進算法規避局部最優。但實際應用中遺傳算法在進化后期效率不高,容易未成熟收斂,且局部搜索能力較弱,因此有必要引入其他優秀算法對遺傳算法進行改進,實現高效運算、快速搜優,防止早熟現象。 3.3 改進算法(GA&SA) GA和SA算法都是基于概率分布機制的優化算法,具有算法理論的共同契機,改進算法是將模擬退火算法設置為一個獨立的算子,置入遺傳算法中,對選擇、交叉、變異操作生成的每一個新個體獨立進行模擬退火,經模擬退火操作后的個體設置為子代個體,迭代次數作為退火時間,迭代直到滿足終止條件求得最優解。求解過程如圖1所示[4-5]。 下面針對9個目標點的物流運輸路徑優化問題的可行解為算例,展開算法的應用分析。 (1)染色體編碼。用字符串表示種群的染色體,染色體中的數字代表目標點,基因的順序代表運輸車輛的線路與方向,解表示長度為n的定長整形字符串,n表示被訪問的目標點個數。那么該物流運輸系統可編碼為248517963,要求路徑m的最后目標點和路徑m+1的開始目標點連接,按車輛的裝載量劃分線路,解碼時將基因依序插入到新路徑之中,即得到路徑1:0→2→4→8→5→0;路徑2:0→1→7→9→6→3→0,能使得路徑數量最少便可實現運輸成本最低。 (2)生成初始種群。隨機產生1至n這n個自然數的不重復排列,作為該運輸路徑種群的個體[6],依據數學建模的約束條件,在運輸系統中設定最低費用的目標點,產生的一部分初始可行解記作S0,隨機生成的剩余部分可行解記作S1,S0和S1共同組成初始種群,記種群規模為M。 (3)確定初始溫度。k取充分大,確定初溫T0=kδ,δ=fmax-fmin,操作中令k=20、80、150、…進行試驗,f是初始種群的目標函數。