專利名稱:基于負載均衡和lk算法的車輛路徑規(guī)劃方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計算機應(yīng)用技術(shù)領(lǐng)域,涉及車輛路徑規(guī)劃,具體地說是一種利用計算 機軟件進行車輛路徑規(guī)劃的方法,用于物流配送業(yè)務(wù)中的車輛路徑規(guī)劃。
背景技術(shù):
車輛路徑規(guī)劃是物流配送的核心環(huán)節(jié)。車輛路徑規(guī)劃的性能好壞直接影響物流配 送的效率,對車輛路徑進行有效規(guī)劃可以提高物流經(jīng)濟效益、實現(xiàn)物流科學(xué)化和高效化。它 在現(xiàn)實生產(chǎn)和生活中具有廣泛的應(yīng)用,例如郵政投遞、飛機、鐵路車輛、水運船舶及公共汽 車的路徑規(guī)劃、管道鋪設(shè)、計算機網(wǎng)絡(luò)拓撲設(shè)計等都屬于車輛路徑規(guī)劃的范疇,因此研究車 輛路徑規(guī)劃具有重要意義。車輛路徑規(guī)劃可以簡單表述為一個供應(yīng)中心用M輛運輸車向N個用戶配送物資, 要求在給定的運輸網(wǎng)絡(luò)中合理安排每輛車的服務(wù)對象和行車路線,即確定哪些用戶該由何 車輛、按何順序、在何時運送,使得用戶的需求得到滿足的前提下,達到如路程最短、成本最 小、耗費時間最少等目的??偟膩碚f,車輛路徑的規(guī)劃就是在滿足用戶需求且路程最短、成本最小或者耗費 時間最短的約束條件下,如何獲得最佳的車輛路徑規(guī)劃方案。因為車輛路徑規(guī)劃方案的性 能好壞直接影響運輸效率的優(yōu)劣,因此恰當(dāng)?shù)能囕v路徑規(guī)劃方法,可以為用戶提供合理的 規(guī)劃方案,從而加快對用戶需求的響應(yīng)速度,提高服務(wù)質(zhì)量,增強用戶對物流環(huán)節(jié)的滿意度。目前,對車輛路徑規(guī)劃主要包括精確方法,經(jīng)典啟發(fā)式方法和元啟發(fā)式方法。精 確方法是早期求解車輛路徑規(guī)劃的主要方法,包括分支定界法,剪枝法,K度中心樹法,動 態(tài)規(guī)劃法,集合覆蓋法等。這類方法是基于數(shù)學(xué)規(guī)劃和網(wǎng)絡(luò)最大流和最小流的思想,用這類 方法求解車輛路徑規(guī)劃很困難,甚至不能求得路徑規(guī)劃方案,即使能求得,也只能處理小規(guī) 模的車輛路徑規(guī)劃。經(jīng)典啟發(fā)式方法主要包括以節(jié)約算法和插入法為代表的構(gòu)造類算法, 以掃描法和Petal法為代表的兩階段法和基于邊交換的改進類算法。這類方法由于加入了 啟發(fā)式信息,并借助機器學(xué)習(xí)的思想,因此可以在較短的時間內(nèi)獲得可行的路徑規(guī)劃方案, 但是這類方法的缺點是易陷入局部最優(yōu),求得的路徑規(guī)劃方案較差,尤其對于規(guī)模大復(fù)雜 度高的車輛路徑規(guī)劃,用這類方法獲得的路徑規(guī)劃方案無法滿足要求。元啟發(fā)式方法是目 前廣泛研究的一類方法,主要包括禁忌搜索算法,模擬退火算法,遺傳算法,蟻群算法,粒 子群算法等。這類方法主要基于計算智能的思想,因此具有較好的全局搜索能力,對于規(guī)模 大復(fù)雜度高的車輛路徑規(guī)劃雖然能夠獲得高質(zhì)量的路徑規(guī)劃,但是由于這類方法的搜索過 程具有隨機性,因此求取速度慢。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述已有方法的不足,提出一種基于負載均衡和 Lin-Kernighan(LK)算法的車輛路徑規(guī)劃方法,以提高車輛路徑規(guī)劃的質(zhì)量和效率,滿足復(fù)雜度高的大規(guī)模車輛路徑規(guī)劃要求。實現(xiàn)本發(fā)明目的的技術(shù)方案是先利用需求結(jié)點地理位置的啟發(fā)式信息,兼顧負 載均衡,確定每輛運輸車輛的服務(wù)對象,對運輸任務(wù)進行劃分;再利用高效率高性能的LK 算法優(yōu)化各個車輛的運送路徑,具體步驟包括如下(1)將車輛、場地、任務(wù)數(shù)據(jù)輸入到計算機中,利用計算機對三者建立車輛路徑規(guī) 劃模型,其中場地包括供應(yīng)節(jié)點和需求節(jié)點;(2)用K均值聚類算法對需求節(jié)點按照地理位置進行聚類,得到初始任務(wù)劃分方 案D = (D1, D2, LDJ,Di為第i類劃分的需求節(jié)點集合,i = 1,2,...η,η為聚類的類別數(shù), 即運輸車輛的個數(shù);(3)對初始任務(wù)劃分方案D = (D1, D2, LDJ進行如下調(diào)整,得到調(diào)整后的任務(wù)劃分 方案D' = {D' i;D' 2,LD' J (3a)計算在當(dāng)前任務(wù)劃分方案D = (D1, D2, L Dj的前提下每個劃分的運輸任務(wù) 負載,記為Q = IQ1, Q2, LQJ,&為Di的任務(wù)負載,(i = 1,2,...η);求集合Q的方差dQ,若 dQ保持10次迭代不降低,則停止,令D' =D,相應(yīng)的D' iZDiG = ^,...!!),輸出當(dāng)前 任務(wù)劃分即調(diào)整后的任務(wù)劃分方案D' = {D' 1 D' 2,LD' J ;否則轉(zhuǎn)3b)繼續(xù)迭代;(3b)令& = max (Q1, Q2, LQj (i = 1,2,Ln),對應(yīng)的第i個劃分Di的運輸任務(wù)為 Di = W1, d2,LdJ,s為第i輛車輛要到達的需求節(jié)點數(shù),Cli為Di中的各需求節(jié)點(i = 1, 2,... η),記任務(wù)劃分集合D中各類的聚類中心為M = {mi,叫,LmJ,Hii為Di的聚類中心(i =^,...nhc^SDi中的第j個需求點d」(j = 1,2, Ls)和M中第q個聚類中心m, (q = 1,2 · · · η)之間的距離,計算cP = mm\d]q-d]1\ (V/' = l,...,s,/i,q =,將 Di 中的第 j 個需求點…遷移到第q個劃分Dtl中,更新當(dāng)前劃分D ;(3c)重新計算第i個劃分和第q個劃分的聚類中心Hii和m,,返回步驟(3a);(4)將D' = (D1 ‘,D' 2,LD' n}中D' i的運輸任務(wù)分配給第i輛車輛(i = 1, 2,...η),對各個車輛,將D' i與供應(yīng)節(jié)點合并,構(gòu)成節(jié)點集合=Ci = D' iU {0}(i = l, 2,... η),{0}為供應(yīng)節(jié)點;用LK算法求解每個節(jié)點集合Ci (i = 1,2,... η)的最優(yōu)TSP路 徑,得到每輛車輛的運輸路徑;(5)計算機將最終路徑規(guī)劃方案傳輸?shù)杰囕v。本發(fā)明與現(xiàn)有技術(shù)相比具有以下優(yōu)點1.質(zhì)量高,尤其對大規(guī)模車輛路徑規(guī)劃更能體現(xiàn)其優(yōu)勢本發(fā)明由于采用了先聚類再優(yōu)化的策略,而且既考慮了地點聚集性,又考慮了各 個車輛的運輸負載均衡,因此在車輛路徑規(guī)劃時更能平衡好各項因素,同時由于本發(fā)明在 求取各個車輛的運輸路徑時采用了目前求解大規(guī)模TSP性能最突出的啟發(fā)式算法LK算法, 因此提高了規(guī)模大復(fù)雜度高的車輛路徑規(guī)劃的質(zhì)量。2.效率高,尤其對大規(guī)模車輛路徑規(guī)劃更能體現(xiàn)其優(yōu)勢本發(fā)明由于在K均值聚類的基礎(chǔ)上,考慮各個車輛的運輸負載均衡,對車輛的運 輸任務(wù)進行調(diào)整,使得各個車輛的運輸任務(wù)盡可能均衡,從而使得各個車輛的路徑規(guī)劃復(fù) 雜度相當(dāng),因此可以最大程度地提高車輛路徑規(guī)劃的效率;同時由于本發(fā)明采用了目前求 解大規(guī)模TSP效率最突出的啟發(fā)式算法LK對各個車輛的運送路徑進行優(yōu)化,因此提高了規(guī) 模大復(fù)雜度高的車輛路徑規(guī)劃的效率。
圖1是本發(fā)明的流程圖;圖2是本發(fā)明與現(xiàn)有TH、IRA方法在均勻分布模型實例下的視覺效果對比圖;圖3是本發(fā)明與現(xiàn)有TH、IRA方法在混合高斯模型實例下的視覺效果對比圖;圖4是本發(fā)明在大規(guī)模均勻分布模型實例下的視覺效果圖;圖5是本發(fā)明在大規(guī)?;旌细咚鼓P蛯嵗碌囊曈X效果圖。
具體實施例方式參照圖1,本發(fā)明的具體實施過程如下步驟1,將車輛、場地、任務(wù)數(shù)據(jù)輸入到計算機中,利用計算機對三者建模,得到車 輛路徑規(guī)劃模型,其中場地包括供應(yīng)節(jié)點和需求節(jié)點。假設(shè)不考慮車輛在每個需求節(jié)點的卸貨時間的差異;假設(shè)車輛勻速行駛,不考慮 天氣和路況的影響;每個需求節(jié)點對物資需求的緊迫程度相同;約束條件為派出車輛數(shù)目的不能超過車輛總數(shù);每輛車從倉庫出發(fā)完成運輸任 務(wù)后返回倉庫一次;每個需求節(jié)點僅能被訪問一次;車輛卸貨后必須離開,不能停留在需 求節(jié)點;所有的車輛在0時刻被派出;供應(yīng)點輸出的物資總量不能超過可供應(yīng)量;各個車輛 的運送總量不超過其最大載貨量。建立的車輛路徑規(guī)劃模型,表示如下
權(quán)利要求
1.一種基于負載均衡和LK算法的車輛路徑規(guī)劃方法,包括如下步驟(1)將車輛、場地、任務(wù)數(shù)據(jù)輸入到計算機中,利用計算機對三者建立車輛路徑規(guī)劃模 型,其中場地包括供應(yīng)節(jié)點和需求節(jié)點;(2)用K均值聚類算法對需求節(jié)點按照地理位置進行聚類,得到初始任務(wù)劃分方案D =ID1, D2, LDJ,Di為第i類劃分的需求節(jié)點集合,i = 1,2,...η,η為聚類的類別數(shù),即運 輸車輛的個數(shù);(3)對初始任務(wù)劃分方案D=(D1,D2,LDJ進行如下調(diào)整,得到調(diào)整后的任務(wù)劃分方案 D' = {D' 1; D' 2,LD' J (3a)計算在當(dāng)前任務(wù)劃分方案D = (D1, D2, LDJ的前提下每個劃分的運輸任務(wù)負載, 記為Q = IQ1, Q2, LQJ,&為Di的任務(wù)負載(i = 1,2,Ln);求集合Q的方差dQ,若dQ保持 10次迭代不降低,則停止,令D' =D,相應(yīng)的D' i = DiG = 1,2,Ln),輸出當(dāng)前任務(wù)劃分 即調(diào)整后的任務(wù)劃分方案D' = {D' 1 D' 2,LD' J ;否則轉(zhuǎn)步驟(3b)繼續(xù)迭代;(3b)令仏=max (Q1, Q2, LQj (i = 1,2, Ln),對應(yīng)的第i個劃分Di的運輸任務(wù)為Di =Id1, d2,LdJ, s為第i輛車輛要到達的需求節(jié)點數(shù),CliSDi中的各需求節(jié)點(i = 1, 2,... η),記任務(wù)劃分集合D中各類的聚類中心為M = {mi,叫,LmJ,Hii為Di的聚類中心(i =^,...nhc^SDi中的第j個需求點d」(j = 1,2, Ls)和M中第q個聚類中心m, (q = 1,2 · · · η)之間的距離,計算(P =min|f -叫(yj = l,...,Syi,q = l,...,n,q^i) ,^fDi 中的第 j個需求點Cli遷移到第q個劃分Dtl中,更新當(dāng)前劃分D ;(3c)重新計算第i個劃分和第q個劃分的聚類中心Hii和πν返回步驟(3a);(4)將D'= {D' 1; D' 2, LD' }中0' i的運輸任務(wù)分配給第i輛車輛(i = l,2, Ln),對各個車輛,將D' i與供應(yīng)節(jié)點合并,構(gòu)成節(jié)點集合Ci = D' ,U {0}(i = l,2,Ln), {0}為供應(yīng)節(jié)點;用LK算法求解每個節(jié)點集合Ci (i = 1,2, Ln)的最優(yōu)TSP路徑,得到每輛 車輛的運輸路徑;(5)計算機將最終路徑規(guī)劃方案傳輸?shù)杰囕v。
2.根據(jù)權(quán)利要求1所述的車輛路徑規(guī)劃方法,其中步驟(1)所述的車輛路徑規(guī)劃模型, 表示如下
3.根據(jù)權(quán)利要求1所述的車輛路徑規(guī)劃方法,其中步驟( 所述的利用K均值聚類算 法對需求節(jié)點按照地理位置進行聚類,按如下步驟進行(2a)從需求節(jié)點集合中任意選擇η個節(jié)點作為初始聚類中心,η為車輛個數(shù); (2b)根據(jù)各聚類中心,計算每個需求節(jié)點與這些各個聚類中心的距離,并根據(jù)最小距 離重新對需求節(jié)點進行劃分;(2c)若聚類的各類集合不再發(fā)生變化,停止劃分,輸出聚類結(jié)果,得到初始任務(wù)劃分方 案D= {D1; D2, LDJ,否則,重新計算各類聚類中心,返回步驟(2b) 0
4.根據(jù)權(quán)利要求1所述的車輛路徑規(guī)劃方法,其中步驟(4)所述的用LK算法求解每個 節(jié)點集合Ci (i = 1,2,Ln)的最優(yōu)TSP路徑,按如下步驟進行 (4a)對集合Ci隨機產(chǎn)生一條初始路徑T ; (4b)令計數(shù)器ρ = 1 ;(4c)在第 j 步中選擇 \ = (t2p_i; t2p) e T 與力=(t2p,t2p+l) Γ,用 yi,y2,· · ·,yp 代替X1, X2, ... , x;p,其中x;p表示需求節(jié)點、時禾口需求節(jié)點、ρ之間的邊,yp表示需求節(jié)點、ρ禾口 需求節(jié)點t2p+1之間的邊;(4d)如果路徑?jīng)]有得到改善,根據(jù)停止規(guī)則,轉(zhuǎn)到步驟Ge);否則ρ = p+1,返回步驟 (4c);(4e)如果在第k步路徑得到了最好的改善,令ρ = k,進行k-opt交換,然后再隨機產(chǎn) 生一條新的初始路徑,返回步驟Gb);否則,執(zhí)行步驟Gf); (4f)停止并輸出路徑。
全文摘要
本發(fā)明公開了一種基于負載均衡和LK算法的車輛路徑規(guī)劃方法,主要解決現(xiàn)有技術(shù)對大規(guī)模車輛路徑規(guī)劃的求取質(zhì)量差及效率低等問題。該方法的實現(xiàn)步驟為1.將車輛、場地、任務(wù)數(shù)據(jù)輸入到計算機中,利用計算機對三者建模,得到車輛路徑規(guī)劃模型;2.對需求節(jié)點按照地理位置進行K均值聚類,得到初始任務(wù)劃分方案;3.考慮初始任務(wù)劃分方案中各個任務(wù)劃分的負載均衡對初始任務(wù)劃分方案進行調(diào)整,得到調(diào)整后的任務(wù)劃分方案;4.將調(diào)整后的任務(wù)劃分方案中的各運輸任務(wù)分配給各車輛,并采用LK算法求取各車輛的最優(yōu)運輸路徑;5.計算機將最終路徑規(guī)劃方案傳輸?shù)杰囕v。本發(fā)明與現(xiàn)有技術(shù)相比,具有質(zhì)量高和效率高的優(yōu)點,可用于解決實際應(yīng)用中的車輛路徑規(guī)劃。
文檔編號G06Q50/00GK102136104SQ20111006832
公開日2011年7月27日 申請日期2011年3月22日 優(yōu)先權(quán)日2011年3月22日
發(fā)明者公茂果, 劉美云, 劉芳, 吳建設(shè), 尚榮華, 戚玉濤, 李陽陽, 焦李成, 郝紅俠, 馬文萍 申請人:西安電子科技大學(xué)