專利名稱:基于離散粒子群優(yōu)化算法的智能物流配送的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及智能計(jì)算和物流配送兩大領(lǐng)域,主要使用一種基于集合和概率的離散 化粒子群優(yōu)化算法對物流配送中的運(yùn)輸車輛進(jìn)行調(diào)度和路徑優(yōu)化。
背景技術(shù):
車輛路徑調(diào)度是物流配送研究中的一項(xiàng)重要內(nèi)容,該問題的研究目標(biāo)是,對一系 列的顧客需求網(wǎng)點(diǎn)設(shè)計(jì)適當(dāng)?shù)穆肪€,使車輛有序地通過,在滿足一定的約束條件下,達(dá)到一 定的優(yōu)化目標(biāo)。其約束條件一般為貨物需求量、發(fā)送量、交發(fā)貨時間、車輛容量限制、行駛 里程限制、時間限制等,優(yōu)化目標(biāo)一般為里程最短、費(fèi)用最少、時間盡量少、車隊(duì)規(guī)模盡量 小、車輛利用率高等。車輛路徑調(diào)度包含了經(jīng)典NP難組合優(yōu)化問題旅行商問題作為它的子 問題,因此它也是NP難的。此外,帶時間窗的車輛路徑調(diào)度由于涉及了更多的約束條件,非 常難解,目前已被證明甚至連找到一個可行解都是NP難的。帶時間窗的車輛路徑調(diào)度,由于其更加地貼近物流公司的現(xiàn)實(shí)需求,在過去受到 了廣泛關(guān)注,已有研究提出了不同的方法。過去的方法主要可以分為如下兩類精確算法 和近似算法。精確算法指可求出最優(yōu)解的算法,如集分割和列生成算法、分支限界法、拉式 松弛法、動態(tài)規(guī)劃法等。它們在求解時引入了嚴(yán)格的數(shù)學(xué)方法,能夠保證找到配送的最佳方 案。但這類算法無法避開指數(shù)爆炸問題,只能有效求解小規(guī)模的物流配送。并且通常這些 算法都是針對某一特定問題設(shè)計(jì)的,適用能力較差,因而在實(shí)際中其應(yīng)用范圍很有限。隨著 現(xiàn)代計(jì)算方法的發(fā)展,一些近似算法如局部搜索算法、禁忌搜索算法、模擬退火算法、遺傳 算法等都被應(yīng)用于求解車輛路徑規(guī)劃問題,能夠求解較大規(guī)模客戶網(wǎng)點(diǎn)的運(yùn)輸車輛規(guī)劃, 但它們存在著局部最優(yōu)、算法參數(shù)魯棒性差等缺點(diǎn)。此外,蟻群優(yōu)化算法作為一種天然地解 決組合優(yōu)化問題的方法,自然而然地被應(yīng)用于車輛路徑規(guī)劃,也得到了較為優(yōu)秀的結(jié)果。但 蟻群優(yōu)化算法存在計(jì)算過程復(fù)雜、收斂速度慢等缺點(diǎn),仍具有一定局限性。粒子群優(yōu)化算法 作為智能計(jì)算領(lǐng)域的一種新興算法,它的算法性能在這幾年已經(jīng)被廣泛認(rèn)可,應(yīng)用領(lǐng)域正 在被不斷擴(kuò)充。因此,近來也有研究人員嘗試用粒子群優(yōu)化算法求解帶時間窗的車輛路徑 調(diào)度問題,但這些研究僅僅是簡單地將連續(xù)空間的粒子位置取整來描述運(yùn)送方案,求解效 果較差。
發(fā)明內(nèi)容
為了克服既有的計(jì)算方式在計(jì)算速率不夠高、調(diào)度質(zhì)量不佳、不適用于大規(guī)模物 流配送等方面的問題,本發(fā)明提出一種能夠高效對運(yùn)輸車輛進(jìn)行調(diào)度和路徑規(guī)劃的離散粒 子群優(yōu)化算法,運(yùn)用智能化的計(jì)算方法,在最小化所需運(yùn)輸車輛數(shù)的同時也力求運(yùn)輸?shù)穆?徑最短,從而最大化地縮減物流配送商的運(yùn)輸成本。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是(1)采用一種基于集合和概率的粒子編碼方式,使粒子群優(yōu)化算法適用于解決離 散的組合優(yōu)化問題(車輛路徑調(diào)度屬于組合優(yōu)化問題的一種)。組合優(yōu)化問題,可以被定義為(S,f,Ω),其中S表示所有可行解的集合,f是目標(biāo)函數(shù),Ω是約束條件。問題的目標(biāo)就 是在滿足約束Ω的條件下,找到一組可行解S使得f最優(yōu)化。在本發(fā)明所采用的離 散粒子群算法中,一個組合優(yōu)化問題(S,f,Ω)與如下特征相關(guān)聯(lián) 一個通用集合E,E可被劃分為η維,即E = E1 U E2 U . . . U Εη。 一個候選解集合X e S與通用集E相關(guān)聯(lián)。X G E且X1 e E1,X2 e E2,..., Xn e En。 當(dāng)X滿足約束條件Ω時,X為可行解。 算法的目標(biāo)就是找到一個使f最優(yōu)化的可行解X*。根據(jù)如上定義,用粒子群優(yōu)化算法求解一個組合優(yōu)化問題的過程可以被認(rèn)為是選 擇一些元素構(gòu)成通用集E的一個子集以優(yōu)化目標(biāo)函數(shù)的過程。( 采用具有綜合學(xué)習(xí)策略的粒子群優(yōu)化算法,粒子通過在搜索空間中交替地“學(xué) 習(xí)”和“飛行”不斷逼近最優(yōu)解所在位置,即尋找出最優(yōu)的調(diào)度安排方案。粒子群優(yōu)化算法 的基本操作主要包含兩個步驟第一,速度更新——每個粒子通過自身的搜索經(jīng)驗(yàn)或是群 體的搜索經(jīng)驗(yàn)來調(diào)整自己飛行速度的大小和方向(即“學(xué)習(xí)”);第二,位置更新——每個粒 子根據(jù)自身的當(dāng)前位置和當(dāng)前速度計(jì)算出自己的新位置(即“飛行”)。本發(fā)明提出的粒子 群優(yōu)化算法中,粒子采用了一種綜合學(xué)習(xí)策略同一個粒子的不同維是向不同的模范進(jìn)行 學(xué)習(xí)的,加之模范的選擇覆蓋了整個粒子群體,而不是單純的粒子自身以及當(dāng)前最優(yōu)的粒 子。這樣做的一個好處是增強(qiáng)了群體搜索的多樣性。由于車輛調(diào)度問題的搜索空間往往十 分復(fù)雜且變幻莫測,增強(qiáng)種群多樣性有助于防止算法陷入局部最優(yōu),從而提高解的質(zhì)量。(3)采用一種歸一化加權(quán)和的決策思想,同時考慮最小化車輛數(shù)和最小化路徑距 離兩個目標(biāo)。每個粒子的適應(yīng)值是它所表示的解所關(guān)聯(lián)的車輛數(shù)和運(yùn)輸距離的加權(quán)和。其 中,對運(yùn)輸距離進(jìn)行了歸一化處理,使得最小化車輛數(shù)優(yōu)先于最小化運(yùn)輸距離。這是因?yàn)椋?在實(shí)際應(yīng)用中,車隊(duì)汽車的維持費(fèi)以及司機(jī)和快遞人員的薪水往往是物流公司支出中很重 要的一部分,因此大多物流公司都最關(guān)注于運(yùn)輸所需車輛數(shù)的減少,當(dāng)?shù)玫降牟煌桨钢?需要的是相同數(shù)目的車輛時,其他的目標(biāo)如總的運(yùn)送距離將會被考慮。本發(fā)明的有益效果是采用基于集合和概率的編碼策略,車輛路徑調(diào)度中的組合 優(yōu)化問題空間能被很貼合地表征;采用帶綜合學(xué)習(xí)策略的粒子群優(yōu)化算法進(jìn)行尋優(yōu)求解, 具有求解質(zhì)量高、魯棒性強(qiáng)的優(yōu)勢;采用歸一化加權(quán)和決策思想引導(dǎo)尋優(yōu)過程,有助于從車 輛數(shù)和運(yùn)輸距離兩個不同角度同時最小化運(yùn)輸開銷。
圖1車輛路徑規(guī)劃問題的示意2本發(fā)明中離散粒子群優(yōu)化算法的整體流程3基于車載和時間窗約束的解碼器的示意圖
具體實(shí)施例方式下面結(jié)合附圖對本發(fā)明的方法作進(jìn)一步的描述。車輛路徑規(guī)劃問題的示意圖如圖1所示對一系列指定的客戶,確定車輛配送行 駛路線,使得車輛從貨倉出發(fā),有序地經(jīng)過一系列客戶點(diǎn),并返回貨倉。要求滿足一定的約束條件(車輛載重、客戶需求、時間窗等),總運(yùn)輸成本最小。車輛路徑規(guī)劃在數(shù)學(xué)上可以這 樣表達(dá)G = (C,L)為一完全圖,其中C = (c0, C1, ... , cn)是節(jié)點(diǎn)集,L = <Ci,Cj>是連接 邊集,(^,(^_^(,1興> 在G中,Ctl表示車場,其余的節(jié)點(diǎn)表示客戶。每個節(jié)點(diǎn)都與一個貨 物需求量Cli相關(guān)聯(lián)(車場的貨物需求量Cltl = 0)。每一條邊<ci; Cj>都與一個相關(guān),t.j 表示客戶(^和…之間的行駛時間。車場有一定數(shù)量可運(yùn)送貨物的車輛,各車輛的負(fù)載恒定 為Q。在帶時間窗的車輛路徑規(guī)劃問題中,對車場和每一個客戶Ci(i = 0,...,n),都關(guān)聯(lián) 上了一個時間窗[ei; Ii],對它們的服務(wù)必須在該時間窗內(nèi)開始進(jìn)行( 被設(shè)置為起始時間 0,10是所有車輛最遲的返回時間)。在粒子群優(yōu)化算法中,每個粒子i維持一個速度向量Vi,—個當(dāng)前位置向量&和 一個歷史最優(yōu)位置向量pBesti。顧名思義,速度向量Vi決定了粒子i當(dāng)前飛行的速率和方 向;位置向量&表示粒子i當(dāng)前在搜索空間中所處的位置,是評估它所表示的解的質(zhì)量的 基礎(chǔ);歷史最優(yōu)位置向量PBesti記錄著粒子i在搜索過程中發(fā)現(xiàn)的最優(yōu)位置(對應(yīng)于最好 的解評估值的位置),用于保存粒子i的搜索經(jīng)驗(yàn)信息。圖2給出了粒子群優(yōu)化算法的整體 流程圖。下面描述整個算法的
具體實(shí)施例方式1、個體編碼1. 1粒子的位置粒子的位置被表示為(1)Xf =[<nbx,d >,<d,nb2 ^,nb^ nb2 e {0,1,· · · d-1,d+1,η},Iib1 乒 γΛ2 (2)其中Hb1, nb2 = (1, ... j_l,j+1,η)表示與節(jié)點(diǎn)d相鄰接兩個節(jié)點(diǎn)為Iib1和nb2, 即車輛會按照<0,. . . ,nb^d^b^.. .,0>的路線進(jìn)行貨物配送。此時每個粒子的位置構(gòu)成 了一個有向的漢密爾頓回路。通過引入一個基于車載和時間窗約束的解碼器,我們可以將每個漢密爾頓回路分 割成一系列的運(yùn)輸路線,從而得到問題的一個可行解。該解碼器的工作原理十分簡單,如 圖3所示從車場的出邊出發(fā),對漢密爾頓回路中的每一條邊,如果該邊滿足車載和時間窗 約束,則保留;否則在該邊關(guān)聯(lián)的兩個頂點(diǎn)之間插入車場,并且用兩條連接車場的新邊替換 原邊。這個過程等同于沿著漢密爾頓回路運(yùn)輸貨物,當(dāng)車輛無法為下一顧客服務(wù)時,車輛回 場,并從車場派出另一輛車為之后的客戶服務(wù),即創(chuàng)建了一條新的運(yùn)輸路線。通過這種粒子編碼方式和基于約束條件的解碼器,每個粒子都表征著問題空間中 的一個可行解。1.2粒子的速度粒子的速度被定義為Vi =IV10,V11,...,Vi"](3)Vf = {< U,V > /p(u,v) |< U,V >e Ad)(4)其中P (U,ν) e
是每條邊<u,v>的相關(guān)概率,表示該邊在構(gòu)造粒子位置時被 選擇的可能性。一旦p(u,v) =0,則將邊<u,v>從速度集中刪除。2、速度更新粒子根據(jù)如下公式進(jìn)行速度更新
權(quán)利要求
1.針對物流配送業(yè)中帶時間窗的車輛路徑規(guī)劃問題,提出了一種智能化的基于離散 粒子群優(yōu)化算法的調(diào)度方案,其特征是應(yīng)用粒子群優(yōu)化算法的主框架,以及基于集合和概 率的編碼方式和運(yùn)算符,對車輛路徑問題進(jìn)行求解,本發(fā)明提出的算法包括以下步驟和操 作(1)基于集合和概率的編碼方式粒子群體的搜索空間為車場和客戶節(jié)點(diǎn)定義的完全 圖的邊集;粒子的位置為完全圖的邊集的一個子集,這個子集中的邊首尾相連構(gòu)成一個有 向漢密爾頓回路,該漢密爾頓回路可通過一個基于車載和時間窗約束的解碼器得到一組派 送路線,即問題的一個可行解;粒子的速度是帶概率的邊集,速度集合中的邊可能被選中構(gòu) 建粒子的新位置,每條邊所關(guān)聯(lián)的概率則表示該邊在位置更新時被選中構(gòu)建粒子新位置的 可能性;(2)粒子的適應(yīng)度值采用如下函數(shù)進(jìn)行計(jì)算fitness (Xi) = NV (Xi)+normalize (TD (Xi))其中NV表示運(yùn)輸所需要的車輛數(shù),TD表示所有路線的總運(yùn)輸距離,normalize (χ)= ΒΓο Βη(χ)/(π/2)是反余切歸一化函數(shù);粒子群體在優(yōu)化過程中以最小化車輛數(shù)為第一 目標(biāo),以最小化運(yùn)輸距離為第二目標(biāo);(3)在算法初始化階段和粒子位置更新過程中所使用的啟發(fā)式信息定義如下timespan (i, j) = max {currtime+tij es} -currtime它表示的是從當(dāng)前節(jié)點(diǎn)i出發(fā)到能為下一客戶j開始服務(wù)所需要的時間;其中 currtime表示系統(tǒng)當(dāng)前時間,是車輛在i、j節(jié)點(diǎn)間行駛所需要花費(fèi)的時間,h表示客戶 j的開始服務(wù)時間窗;(4)初始化在算法的初始化階段,粒子的速度被隨機(jī)賦初值;粒子的位置以概率P使 用貪心算法賦初值,以概率(1-爐)隨機(jī)賦初值;粒子的歷史最優(yōu)值設(shè)為粒子的當(dāng)前位置;(5)速度更新粒子根據(jù)如下公式進(jìn)行速度更新
2.根據(jù)權(quán)利要求1所述的用于求解車輛路徑問題的離散粒子群優(yōu)化算法,其特征是 采用一種基于集合和概率的粒子編碼方式,求解一個組合優(yōu)化問題的過程可以被認(rèn)為是選 擇一些元素構(gòu)成通用集的一個子集以優(yōu)化目標(biāo)函數(shù)的過程。
3.根據(jù)權(quán)利要求1所述的用于求解車輛路徑問題的離散粒子群優(yōu)化算法,其特征是 采用了一種綜合學(xué)習(xí)策略,在速度更新時,同一個粒子的不同維是向不同的模范進(jìn)行學(xué)習(xí) 的,加之模范的選擇覆蓋了整個粒子群體,而不是單純的粒子自身以及當(dāng)前最優(yōu)的粒子。
4.根據(jù)權(quán)利要求1所述的用于求解車輛路徑問題的離散粒子群優(yōu)化算法,其特征是 采用一種歸一化加權(quán)和的決策思想,同時考慮最小化車輛數(shù)和最小化路徑距離兩個目標(biāo); 每個粒子的適應(yīng)值是它所表示的解所關(guān)聯(lián)的車輛數(shù)和運(yùn)輸距離的加權(quán)和;其中,對運(yùn)輸距 離進(jìn)行了歸一化處理,使得最小化車輛數(shù)優(yōu)先于最小化運(yùn)輸距離。
全文摘要
本發(fā)明公開了一種基于離散粒子群優(yōu)化算法的智能物流配送方案,旨在為運(yùn)輸車輛進(jìn)行路徑調(diào)度,以節(jié)約運(yùn)輸成本。在標(biāo)準(zhǔn)粒子群優(yōu)化算法的框架上引入了基于集合和概率的編碼方式和運(yùn)算符,可將原本適用于連續(xù)空間的粒子群算法引入離散組合優(yōu)化空間,以解決車輛路徑調(diào)度問題,并且保持傳統(tǒng)粒子群算法操作效率高、尋優(yōu)能力強(qiáng)、魯棒性強(qiáng)等優(yōu)勢。此外,由于利用了啟發(fā)式信息構(gòu)建粒子位置、以及局部搜索算子的引入,問題本身的特征和數(shù)據(jù)中蘊(yùn)含的信息被加以利用,從而算法的求解效果得到了進(jìn)一步加強(qiáng)。通過采用一種歸一化加權(quán)和的決策思想處理問題目標(biāo),在最小化所需運(yùn)輸車輛數(shù)的同時也力求運(yùn)輸?shù)穆窂阶疃?,從而最大化地縮減了物流配送商的運(yùn)輸成本。
文檔編號G06Q10/00GK102117441SQ201010566908
公開日2011年7月6日 申請日期2010年11月29日 優(yōu)先權(quán)日2010年11月29日
發(fā)明者張軍, 龔月姣 申請人:中山大學(xué)