亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于粒子群算法的貨物采購及拼船/車運(yùn)輸方法與流程

文檔序號(hào):11251607閱讀:523來源:國(guó)知局
本發(fā)明涉及優(yōu)化與智能計(jì)算
技術(shù)領(lǐng)域
,具體涉及一種基于粒子群算法的貨物采購及拼船/車運(yùn)輸方法。
背景技術(shù)
:對(duì)于集團(tuán)化經(jīng)營(yíng)的公司,各分公司的資源采購需求往往較為分散,各自進(jìn)行資源采購并運(yùn)輸需要花費(fèi)較高的物流成本。將各分公司的采購需求匯總,并由總部通過優(yōu)化方法制定聯(lián)盟采購和拼裝運(yùn)輸計(jì)劃往往可獲得較高的經(jīng)濟(jì)效益。大型船舶(車輛)的單位貨物運(yùn)輸成本一般遠(yuǎn)低于小型船舶。對(duì)于供應(yīng)地相近,需求地相近,而中途運(yùn)輸距離較長(zhǎng)的多批次零散貨物而言,將不同批次的零散貨物拼裝成大船(車)進(jìn)行運(yùn)輸和配送可以有效提高經(jīng)濟(jì)效益。拼船運(yùn)輸一般由貨物收集、長(zhǎng)途運(yùn)輸與貨物分送三個(gè)過程組成。具體是指:大型船泊/車輛依次經(jīng)過不同的產(chǎn)地并將各產(chǎn)地的零散貨物收集起來,經(jīng)長(zhǎng)途運(yùn)輸?shù)诌_(dá)銷售地區(qū)后再依次經(jīng)過不同的銷地并在銷地卸載相應(yīng)批次的零散貨物。優(yōu)化采購及拼船/車運(yùn)輸?shù)哪康氖窃谙嚓P(guān)條件的限制下尋找最優(yōu)采購及運(yùn)輸方案,使所有參與運(yùn)輸計(jì)劃的船舶的總運(yùn)費(fèi)最低??傔\(yùn)費(fèi)包含航行費(fèi)用、裝港滯期費(fèi)、卸港滯期費(fèi)和靠港費(fèi)用。優(yōu)化采購及拼船運(yùn)輸優(yōu)化的限制條件包括以下幾類:(1)供需平衡限制,對(duì)于任意批次的貨物需求,其實(shí)際供貨量與預(yù)定供貨量之間的誤差應(yīng)控制在±5%以內(nèi);(2)單船額定載重限制,每船的貨物運(yùn)載量都要小于等于該船的額定載重;(3)裝貨日期限制,對(duì)于無裝期限定的貨物,船舶可以自選裝期抵達(dá)裝港,對(duì)于有裝期限定的貨物,船 舶必須在規(guī)定的裝期之前抵達(dá);(4)到貨日期限制,船舶必須在自身裝載各批次貨物規(guī)定的卸期之內(nèi)抵達(dá)并裝載貨物;(5)定向運(yùn)輸限制,某些批次的貨物可以和其他批次的貨物拼船運(yùn)輸,但最后必須卸載到指定港口。(6)港口水深限制,所選型號(hào)的船舶裝滿貨物后的吃水深度必須小于港口水深限定。(7)單向運(yùn)輸限制,某些國(guó)家環(huán)保法律禁止已裝載部分高硫油品的船舶進(jìn)港拼裝。拼船運(yùn)輸優(yōu)化屬于np難問題(non-deterministicpolynomial的問題,多項(xiàng)式復(fù)雜程度的非確定性問題),本發(fā)明采用粒子群算法予以求解。技術(shù)實(shí)現(xiàn)要素:要解決的技術(shù)問題如何提高貨物采購及拼船/車運(yùn)輸方案的尋優(yōu)效率。針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供了一種基于粒子群算法的貨物采購及拼船/車運(yùn)輸方法,包括如下步驟:s1:獲取貨物采購及運(yùn)輸需求相關(guān)數(shù)據(jù);s2:設(shè)定粒子群中個(gè)體的貨物采購及運(yùn)輸?shù)娜旧w編碼方案,設(shè)定染色體基因信息;s3:配置粒子群算法參數(shù);s4:隨機(jī)生成初始粒子群,包括位置群與速度群;s5:解讀粒子群中所有個(gè)體的染色體基因信息,生成采購-拼船/車運(yùn)輸配送方案,并計(jì)算粒子群中個(gè)體的適應(yīng)值;s6:記錄個(gè)體歷史最優(yōu)方案與群體歷史最優(yōu)方案,更新群中各粒子個(gè)體的速度與位置;s7:判斷是否滿足終止條件,如果不滿足則返回s5,如此循環(huán)直至滿足終止條件,如果滿足則優(yōu)化結(jié)束輸出最優(yōu)方案??蛇x地,所述設(shè)定粒子群中任一個(gè)體的貨物采購及運(yùn)輸?shù)娜旧w編碼方案的步驟具體包括:將貨物采購-運(yùn)輸過程的貨物收集方案、裝貨時(shí)間、貨物分送方案和參與運(yùn)輸?shù)倪\(yùn)輸工具分解的為供應(yīng)染色體、需求染色體、運(yùn)輸工具染色體和裝期染色體??蛇x地,所述計(jì)算粒子群中個(gè)體的適應(yīng)值的步驟具體包括:按照供應(yīng)染色體和運(yùn)輸工具染色體基因順序和基因?qū)?yīng)的附加屬性對(duì)貨物運(yùn)載工具裝載及生成采購-裝載方案;按需求染色體基因順序?qū)?yīng)的附加屬性對(duì)貨物分運(yùn)載工具配送;按供應(yīng)染色體和需求染色體的基因及基因附加屬性定位貨物供應(yīng)地和貨物卸載地的位置;根據(jù)參與運(yùn)輸?shù)倪\(yùn)輸工具和貨物編號(hào)對(duì)應(yīng)的貨物供應(yīng)地和貨物卸載地的位置確定運(yùn)輸工具運(yùn)輸線路,并根據(jù)路線計(jì)算運(yùn)輸費(fèi);按裝期染色體、供應(yīng)染色體和需求染色體的基因信息反推標(biāo)注自選裝貨期的貨物的裝貨期,而后計(jì)算到貨期;根據(jù)裝貨期和到貨期計(jì)算運(yùn)載工具在裝貨地和卸貨地的滯期,并根據(jù)滯期計(jì)算滯期費(fèi);根據(jù)供應(yīng)染色體和需求染色體與運(yùn)輸工具染色體的港口與船型信息,計(jì)算運(yùn)輸工具的靠港費(fèi)用。將所有運(yùn)輸工具運(yùn)輸費(fèi)、滯期費(fèi)和靠港費(fèi)加和,獲得粒子群中相應(yīng)個(gè)體的適應(yīng)值??蛇x地,所述根據(jù)滯期計(jì)算滯期費(fèi)的步驟還包括:兩個(gè)以上運(yùn)載工具同時(shí)抵達(dá)時(shí),其中之一需等待,等待時(shí)間為滯期,計(jì)算滯期費(fèi)??蛇x地,所述對(duì)貨物運(yùn)載工具裝載及生成采購方案步驟具體包括:s51:從運(yùn)輸工具染色體起始點(diǎn)開始讀取運(yùn)輸工具染色體基因所代表的運(yùn)輸工具的編號(hào),并由基因?qū)傩垣@取該運(yùn)輸工具的剩余載重;s52:從供應(yīng)染色體起始點(diǎn)開始讀取供應(yīng)染色體體基因所代表的貨物編碼,并由基因?qū)傩垣@取該批次貨物的剩余數(shù)量;s53:判斷是否結(jié)束生成裝載方案;若供應(yīng)染色體起始點(diǎn)位置大于 供應(yīng)染色體長(zhǎng)度或運(yùn)輸工具的剩余載重將為零,則停止生成采購方案;否則,進(jìn)入步驟s54;s54:令運(yùn)輸工具裝載貨物,生成購買與裝載方案??蛇x地,所述按裝期染色體、供應(yīng)染色體和需求染色體的基因信息反推標(biāo)注自選裝貨期的貨物的裝貨期,而后計(jì)算到貨期的具體步驟為:從前至后讀取編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的采購貨物;若編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體基因所代表的某批次采購貨物裝期并非自選,則以此貨物裝期為基準(zhǔn),根據(jù)裝港間的航程,向前反推前面編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的貨物的裝期,而后向后正推后面編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的貨物的裝期;若編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體所有基因所代表的采購貨物裝期屬性都為自選,則根據(jù)編號(hào)為i的運(yùn)輸工具中裝載的需求染色體第一個(gè)基因所代表的貨物的卸載期限和裝期染色體中的相應(yīng)裝期基因計(jì)算第一卸期,而后根據(jù)第一卸期反推前面編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的貨物的裝期;其中i為常數(shù)??蛇x地,所述設(shè)定染色體基因信息的步驟具體包括:對(duì)需要運(yùn)輸?shù)母髋呜浳锞幪?hào);標(biāo)記各貨物供應(yīng)地/卸載地,數(shù)量、類型、裝貨期/卸貨期限,并相應(yīng)編號(hào);對(duì)運(yùn)輸工具編號(hào)并標(biāo)記各運(yùn)載工具的額定運(yùn)載量;將供/需貨物批次編號(hào)、運(yùn)輸工具編號(hào)及裝貨期編號(hào)作為相應(yīng)染色體基因;將貨物供應(yīng)地編號(hào)、貨物卸載地編號(hào)、供應(yīng)貨物類型、需求貨物類型、供應(yīng)貨物數(shù)量、需求貨物數(shù)量、貨物裝期、參與運(yùn)輸?shù)倪\(yùn)載工 具載重作為基因?qū)傩愿街谙鄳?yīng)染色體的基因上??蛇x地,所述粒子群算法參數(shù)包括慣性權(quán)重、個(gè)體歷史最優(yōu)權(quán)重、群體歷史最優(yōu)權(quán)重及位置更新約束因子、計(jì)算總迭代次數(shù)和粒子群的數(shù)量??蛇x地,更新群中各個(gè)體的速度與位置是按以下公式執(zhí)行的:速度更新公式為:位置更新公式為:其中,指第k次迭代粒子i飛行速度矢量的第d維分量;指第k次迭代粒子i位置矢量的第d維分量;指粒子i搜索到的自身歷史最優(yōu)矢量的第d維分量;指所有粒子所搜索到的全局歷史最優(yōu)矢量的第d維分量;ω指保持原來速度的系數(shù),也叫做慣性權(quán)重;c1指粒子跟蹤自己歷史最優(yōu)值的權(quán)重系數(shù),它表示粒子自身的認(rèn)識(shí);c2指粒子跟蹤群體最優(yōu)值的權(quán)重系數(shù),它表示粒子對(duì)整個(gè)群體知識(shí)的認(rèn)識(shí);ξ,η指[0,1]區(qū)間內(nèi)均勻分布的隨機(jī)數(shù),用于增加搜索的隨機(jī)性;r指位置更新約束因子。由上述技術(shù)方案可知,本發(fā)明提供的基于粒子群算法的優(yōu)化采購及拼船/車運(yùn)輸方法,將采購-拼船/車運(yùn)輸過程分解為采購染色體、裝貨期染色體、需求染色體與運(yùn)輸工具染色體進(jìn)行耦合編碼,并利用粒子群算法予以求解。通過需求匹配編碼、配送定向解碼及裝期限定解碼等方法,避免無解假象并有效提高算法的尋優(yōu)效率,節(jié)約了大量的計(jì)算時(shí)間,實(shí)現(xiàn)了貨物采購及拼裝運(yùn)輸方案的優(yōu)化,降低了分散貨物采購-運(yùn)輸過程的物流成本,提高了集團(tuán)化公司的聯(lián)盟經(jīng)營(yíng)效益。附圖說明為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單的介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明一個(gè)實(shí)施例中基于粒子群算法的貨物采購及拼船/車運(yùn)輸方法流程示意圖。具體實(shí)施方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。如圖1所示,一種基于粒子群算法的優(yōu)化采購及拼船/車運(yùn)輸方法,包括如下步驟:s1:獲取貨物采購及運(yùn)輸需求相關(guān)數(shù)據(jù);s2:設(shè)定粒子群中任一個(gè)體的貨物采購及運(yùn)輸?shù)娜旧w編碼方案,設(shè)定染色體基因信息;s3:配置慣性權(quán)重、個(gè)體歷史最優(yōu)權(quán)重、群體歷史最優(yōu)權(quán)重及位置更新約束因子等粒子群算法參數(shù);s4:隨機(jī)生成初始粒子群,包括位置群與速度群;s5:解讀粒子群中所有個(gè)體的染色體基因信息,生成采購-拼船/車運(yùn)輸配送方案,并計(jì)算適應(yīng)值;s6:記錄個(gè)體歷史最優(yōu)方案與群體歷史最優(yōu)方案,根據(jù)公式更新群中各粒子個(gè)體的速度與位置;s7:判斷是否滿足終止條件,如果不滿足則返回s5,如此循環(huán)直至滿足終止條件,如果滿足則優(yōu)化結(jié)束輸出最優(yōu)方案。下面以采購并拼船運(yùn)輸不同港口的原油為優(yōu)選例對(duì)本發(fā)明展開詳細(xì)的說明。第一,介紹獲取貨物運(yùn)輸需求數(shù)據(jù)的步驟。一般貨物運(yùn)輸?shù)男枨髷?shù)據(jù)包括貨物的卸載地、貨物的需求數(shù)量、需求貨物的類型、到貨時(shí)間期限等。第二,介紹確定貨物運(yùn)輸?shù)乃娜旧w編碼方案,設(shè)定染色體基因信息的步驟。在本發(fā)明的一個(gè)實(shí)施例中,確定貨物采購-運(yùn)輸?shù)乃娜旧w編碼方案的步驟具體包括:將貨物采購-運(yùn)輸過程的貨物收集方案、裝貨時(shí)間、貨物分送方案和參與運(yùn)輸?shù)倪\(yùn)輸工具分解表示為供應(yīng)染色體x、裝期染色體d、需求染色體y和運(yùn)輸工具染色體z。首先,將需要購買并收集的貨物按批次編號(hào),并用xvol表示各批次供應(yīng)貨物的數(shù)量,用xport表示各批次供應(yīng)貨物所在的港口編號(hào),用xtype表示各批次供應(yīng)貨物的類型編號(hào);用xdate表示各批次供應(yīng)貨物所在的裝貨日期。其次,將所需配送的貨物按批次編號(hào),并用yvol表示各批次需求貨物的數(shù)量,用yport表示各批次需求貨物所在的港口編號(hào),用ytype表示各批次需求貨物的類型編號(hào);用ydate1表示各批次需求貨物的最早到貨日期;用ydate2表示各批次需求貨物的最晚到貨日期。再次,將參與運(yùn)輸?shù)拇熬幪?hào),并用zvol表示各船的額定載重。最后,將各船的裝貨期編號(hào),并用date表示裝貨期選值。下面以采購并拼船運(yùn)輸不同類型的原油為例,對(duì)確定四染色體編碼方案做具體說明。如表1所示,假設(shè)生產(chǎn)共需采購并運(yùn)輸7個(gè)批次的原油(x),各批次采購原油依次編號(hào)1-7,各批次采購原油需采購的數(shù)量分別為20、10、13、9、14.5、19與18萬噸,各批次采購原油分別位于1、2、3、4、5、6、7號(hào)出口港,各批次采購原油類型分別為1、2、3、4、5、6、7,各批次采購原油裝貨期分別為10-1、自選、10-4、自選、自選、自選、自選。銷售地區(qū)共需進(jìn)口7個(gè)批次的原油(y),各批次進(jìn)口原油依次編號(hào)1-7,各批次進(jìn)口原油需求數(shù)量分別為20、10、13、9、14.5、19與18萬噸,各批次進(jìn)口原油分別位于1、2、3、4、5、6、7號(hào)進(jìn)口 港??赡軈⑴c運(yùn)輸?shù)拇坝?只,依次編號(hào)1、2、3、4、5,其額定載重都為26萬噸。將各船的裝貨期編號(hào)(d)1、2、3、4、5,并用假設(shè)進(jìn)化過程中某代某一個(gè)體的裝貨期選值為0.12、0.23、0.48、0.89、0.64。表1基因附加屬性表按貨物供需類型匹配要求的限定,(x)1號(hào)采購原油只能對(duì)應(yīng)供應(yīng)(y)1號(hào)進(jìn)口原油。依次類推,其余2、3、4、5、6、7號(hào)采購原油也只能分別供應(yīng)類型相匹配的2、3、4、5、6、7號(hào)進(jìn)口原油。為了體現(xiàn)每種原油的供需平衡運(yùn)輸限制,(一般實(shí)際供貨量與預(yù)定供貨量之間的誤差應(yīng)控制在±5%以內(nèi)算滿足精度要求),1號(hào)原油的實(shí)際采購量可以在20×0.95=19萬噸至20×1.05=21萬噸之間浮動(dòng)。第三,介紹配置粒子群算法相關(guān)參數(shù)的步驟。為了提高方案尋優(yōu)計(jì)算的效率,需要對(duì)粒子群算法參數(shù)做詳細(xì)的 配置,具體地,需要設(shè)置慣性權(quán)重、個(gè)體歷史最優(yōu)權(quán)重、群體歷史最優(yōu)權(quán)重及位置更新約束因子、計(jì)算總迭代次數(shù)和粒子群的數(shù)量等。第四,介紹所述從四染色體編碼解讀拼船采購-運(yùn)輸方案的步驟。按預(yù)先設(shè)置的種群數(shù)量,隨機(jī)生成包含初始供應(yīng)染色體x、需求染色體y、運(yùn)輸工具染色體z和裝期染色體d的位置群和速度群。其中x染色體的長(zhǎng)度等于貨物供應(yīng)批次數(shù)目,y染色體的長(zhǎng)度等于貨物需求批次數(shù)目,z染色體的長(zhǎng)度等于參與運(yùn)輸貨物的船舶數(shù)目,d染色體長(zhǎng)度與z相同。介紹解讀種群各個(gè)體所對(duì)應(yīng)的采購-拼船運(yùn)輸方法。假設(shè)迭代過程中某代種群中個(gè)體染色體組如表2所示:表2某代種群中某個(gè)體染色體組編碼x1234765y3124675z24315d0.120.230.480.890.64首先,令船舶對(duì)采購原油進(jìn)行裝載,生成采購-拼裝方案。船舶z起始點(diǎn)為2號(hào)船,其剩余載重為26萬噸,令2號(hào)船對(duì)采購貨物x進(jìn)行裝載,x起始點(diǎn)為1號(hào)采購原油,其剩余數(shù)量為20萬噸。由于1號(hào)采購原油剩余數(shù)量小于2號(hào)船舶的剩余載重,因此船舶將其完全裝載。裝載后,2號(hào)船剩余載重為26-20=6萬噸,1號(hào)原油剩余數(shù)量為0;令z起始點(diǎn)保持不變,仍為2號(hào)船,x起始點(diǎn)后移一位,指向2號(hào)原油。令2號(hào)船繼續(xù)裝載2號(hào)原油,由于2號(hào)船剩余載重6萬噸,小于2號(hào)原油剩余數(shù)量10萬噸,因而2號(hào)船只裝載6萬噸2號(hào)原油,其剩余載重為0,2號(hào)原油剩余數(shù)量為10-6=4萬噸。此時(shí)2號(hào)船滿載,共計(jì)裝載20萬噸1號(hào)采購原油和6萬噸2號(hào)采購原油。令z起始點(diǎn)后移一位,指向4號(hào)船,其剩余載重為26萬噸,令x起始點(diǎn)保持不變,仍然指向2號(hào)原油,其剩余數(shù)量為4萬噸,由于4號(hào)船舶剩余載重大于2號(hào)原油剩余數(shù)量,因此船舶將其完全裝載。裝載后,4號(hào)船剩余載重為26-4=22萬噸,2號(hào)原油剩余數(shù)量為0。z起始點(diǎn)保持不變,仍為4號(hào)船,x起始點(diǎn)后移一位,指向3號(hào)原油。令4號(hào)船繼續(xù)裝載3號(hào)原油,由于4號(hào)船剩余載重22萬噸,大于3號(hào)原油剩余數(shù)量13萬噸,因此船舶將其完全裝載。裝載后,4號(hào)船剩余載重為22-13=9萬噸,3號(hào)原油剩余數(shù)量為0。z起始點(diǎn)保持不變,仍為4號(hào)船,x起始點(diǎn)后移一位,指向4號(hào)原油。令4號(hào)船繼續(xù)裝載4號(hào)原油,由于4號(hào)船剩余載重9萬噸,等于4號(hào)原油剩余數(shù)量9萬噸,因此船舶將其完全裝載。裝載后,4號(hào)船剩余載重為0,4號(hào)原油剩余數(shù)量為0。此時(shí)4號(hào)船滿載,共計(jì)裝載4萬噸2號(hào)采購原油和13萬噸3號(hào)采購原油和9萬噸4號(hào)采購原油。令z起始點(diǎn)后移一位,指向3號(hào)船,其剩余載重為26萬噸;令x起始點(diǎn)后移一位,指向7號(hào)原油,其剩余數(shù)量18萬噸。由于7號(hào)采購原油剩余數(shù)量小于3號(hào)船舶的剩余載重,因此船舶將其完全裝載,裝載后,3號(hào)船剩余載重為26-18=8萬噸,7號(hào)原油剩余數(shù)量為0;令z起始點(diǎn)保持不變,仍為3號(hào)船,令x起始點(diǎn)后移一位,指向6號(hào)原油。令3號(hào)船繼續(xù)裝載6號(hào)原油,由于3號(hào)船剩余載重8萬噸,小于6號(hào)原油剩余數(shù)量19萬噸,因而3號(hào)船只裝載8萬噸6號(hào)原油,其剩余載重為0,6號(hào)原油剩余數(shù)量為19-8=11萬噸。此時(shí)3號(hào)船滿載,共計(jì)裝載18萬噸7號(hào)采購原油和8萬噸6號(hào)采購原油。令z起始點(diǎn)后移一位,指向1號(hào)船,其剩余載重為26萬噸,令x起始點(diǎn)保持不變,仍然指向6號(hào)原油,其剩余數(shù)量為11萬噸,由于1號(hào)船舶剩余載重大于6號(hào)原油剩余數(shù)量,因此船舶將其完全裝載。裝載后,1號(hào)船剩余載重為26-11=15萬噸,6號(hào)原油剩余數(shù)量為0。令z起始點(diǎn)保持不變,仍為1號(hào)船,令x起始點(diǎn)后移一位,指向5號(hào)原油。令1號(hào)船繼續(xù)裝載5號(hào)原油,由于1號(hào)船剩余載重15萬噸,大于5號(hào)原油剩余數(shù)量14.5萬噸,因而船舶將其完全裝載,裝載后,1號(hào)船剩余載重為15-14.5=0.5萬噸,5號(hào)原油剩余數(shù)量為0。此時(shí),1號(hào)船共計(jì)裝載11萬噸6號(hào)采購原油和14.5萬噸5號(hào)采購原油。由于采購原油x已被完全拆分裝載,因此,裝船過程結(jié)束,z中5號(hào)船不再參與運(yùn)輸。其次,令載油船舶根據(jù)需求進(jìn)行分配卸載,生成配送方案。船舶z起始點(diǎn)為2號(hào)船,共計(jì)裝載20萬噸1號(hào)采購原油和6萬噸2號(hào)采購原油。令y起始點(diǎn)指向第一個(gè)剩余需求數(shù)量不為0的需求油品,當(dāng)前為3號(hào)需求原油,剩余需求數(shù)量13萬噸,需求類型為3,2號(hào)船中無相關(guān)類型油品,不對(duì)其配送。令y起始點(diǎn)指向下一個(gè)剩余需求數(shù)量不為0的需求油品,指向1號(hào)需求原油,剩余需求數(shù)量20萬噸,需求類型為1,令2號(hào)船對(duì)1號(hào)需求原油進(jìn)行配卸20萬噸1號(hào)采購原油,則1號(hào)需求原油剩余需求數(shù)量為0,2號(hào)船1號(hào)采購原油剩余裝載量為0。令y起始點(diǎn)指向下一個(gè)剩余需求數(shù)量不為0的需求油品,也即2號(hào)需求原油,剩余需求數(shù)量10萬噸,需求類型為2。令2號(hào)船對(duì)2號(hào)需求原油進(jìn)行配卸6萬噸2號(hào)采購原油,則2號(hào)需求原油剩余需求數(shù)量為10-6=4萬噸,有待繼續(xù)配卸。2號(hào)船2號(hào)采購原油剩余裝載量為0。至此,2號(hào)船所裝載的采購原油完全配送完畢。根據(jù)2號(hào)船的裝油方案和卸油方案,并參照各油品所在的裝、卸港,即可得到2號(hào)船的行船路線:xport1(1,20/20)→xport2(2,6/10)→yport1(1,20/20)→yport2(2,6/10)。令z起始點(diǎn)后移一位,指向4號(hào)船,共計(jì)裝載4萬噸2號(hào)采購原油和13萬噸3號(hào)采購原油和9萬噸4號(hào)采購原油。令y起始點(diǎn)指向第 一個(gè)剩余需求數(shù)量不為0的需求油品,也即3號(hào)需求原油,剩余需求數(shù)量13萬噸,需求類型為3。令4號(hào)船對(duì)3號(hào)需求原油進(jìn)行配卸13萬噸3號(hào)采購原油,則3號(hào)需求原油剩余需求數(shù)量為0,4號(hào)船中3號(hào)采購原油剩余裝載量為0。令y起始點(diǎn)指向下一個(gè)剩余需求數(shù)量不為0的需求油品,也即2號(hào)需求原油,剩余需求數(shù)量4萬噸,需求類型為2。令4號(hào)船對(duì)2號(hào)需求原油進(jìn)行配卸4萬噸2號(hào)采購原油,則2號(hào)需求原油剩余需求數(shù)量為0,4號(hào)船中2號(hào)采購原油剩余裝載量為0。令y起始點(diǎn)指向下一個(gè)剩余需求數(shù)量不為0的需求油品,也即4號(hào)需求原油,剩余需求數(shù)量9萬噸,需求類型為4。令4號(hào)船對(duì)4號(hào)需求原油進(jìn)行配卸9萬噸4號(hào)采購原油,則4號(hào)需求原油剩余需求數(shù)量為0,4號(hào)船中4號(hào)采購原油剩余裝載量為0。至此,4號(hào)船所裝載的采購原油完全配送完畢。根據(jù)4號(hào)船的裝油方案和卸油方案,并參照各油品所在的裝、卸港,即可得到4號(hào)船的行船路線:xport2(1,4/10)→xport3(3,13/13)→xport4(3,9/9)→yport3(3,13/13)→yport2(2,4/10)→yport4(4,9/9)。以此類推,令3號(hào)船和1號(hào)船按從前之后的順序?qū)中剩余需求數(shù)量不為0的需求原油進(jìn)行配送,分別可得各自的行船路線。3號(hào)船:xport7(7,18/18)→xport6(6,8/19)→yport6(6,8/19)→yport7(7,18/18)。1號(hào)船:xport6(6,11/19)→xport5(5,14.5/14.5)→yport6(6,11/19)→yport5(5,14.5/14.5)。再次,為各船裝貨期標(biāo)記為“自選”的原油選擇裝期。計(jì)算到貨期的具體步驟為:從前至后讀取編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的采購貨物;若編號(hào)為i的運(yùn)輸工具中 裝載的供應(yīng)染色體基因所代表的某批次采購貨物裝期并非自選,則以此貨物裝期為基準(zhǔn),根據(jù)裝港間的航程,向前反推前面編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的貨物的裝期,而后向后正推后面編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體的基因所代表的貨物的裝期;若編號(hào)為i的運(yùn)輸工具中裝載的供應(yīng)染色體所有基因所代表的采購貨物裝期屬性都為自選,則根據(jù)編號(hào)為i的運(yùn)輸工具中裝載的需求染色體第一個(gè)基因所代表的貨物的卸載期限和裝期染色體第i號(hào)基因計(jì)算第一卸期,而后根據(jù)第一卸期反推前面編號(hào)為i的運(yùn)輸工具中供應(yīng)染色體的基因所代表的貨物的裝期;其中i為常數(shù)。分別選取2號(hào)船和3號(hào)船為例說明選裝貨期的方法。對(duì)于2號(hào)船,裝載20萬噸1號(hào)采購原油和6萬噸2號(hào)采購原油,配送給1號(hào)需求原油20萬噸和2號(hào)需求原油6萬噸。從前至后檢查2號(hào)船是否裝載有固定裝期的采購原油。由于2號(hào)船裝載的1號(hào)采購原油裝期固定為10-1,因此d染色體不起作用,對(duì)于2號(hào)船裝載的各批次原油裝貨期選取以1號(hào)采購原油為準(zhǔn),其具體計(jì)算方式為:2號(hào)原油的裝貨期=1號(hào)采購原油的裝貨期+1號(hào)采購原油數(shù)量÷1號(hào)裝港的裝貨時(shí)間+1號(hào)裝港拖船時(shí)間+1號(hào)裝港與2號(hào)裝港間的航程÷2號(hào)船的航速。對(duì)于3號(hào)船,裝載有18萬噸7號(hào)采購原油和8萬噸6號(hào)采購原油,配送給6號(hào)需求原油8萬噸和7號(hào)需求原油18萬噸。從前至后檢查3號(hào)船是否裝載有固定裝期的采購原油。由于3號(hào)船所裝載的所有批次的采購原油都為“自選”裝期,因此d染色體起作用。對(duì)于2號(hào)船裝載的各批次原油裝貨期選取可根據(jù)6號(hào)需求原油的6ydate1和6ydate2求得,具體步驟為:(a)計(jì)算3號(hào)船的“第一卸期”=6ydate1+(6ydate2-6ydate1)×3d(0.48)=11月16日;(b)由”第一卸期”反推3號(hào)船中6號(hào)采購原油的裝貨期=“第一卸期”-6號(hào)卸港與6號(hào)裝港間的航程÷3號(hào)船的航速-6號(hào)采購原油的船載數(shù)量÷6號(hào)裝港的裝貨時(shí)間-6號(hào)裝港的拖船時(shí)間;(c)由6號(hào)采購原油的裝貨期反推7號(hào)采購原油的裝貨期=6號(hào)采購原油的裝貨期-6號(hào)裝港與7號(hào)裝港間的 航程÷3號(hào)船的航速-7號(hào)采購原油的船載數(shù)量÷7號(hào)裝港的裝貨時(shí)間-7號(hào)裝港的拖船時(shí)間。最后,介紹根據(jù)以上過程生成優(yōu)化采購方案的方法。所述對(duì)貨物運(yùn)載工具裝載及生成采購方案步驟具體包括:s51:從運(yùn)輸工具染色體起始點(diǎn)開始讀取運(yùn)輸工具染色體基因所代表的運(yùn)輸工具的編號(hào),并由基因?qū)傩垣@取該運(yùn)輸工具的剩余載重;s52:從供應(yīng)染色體起始點(diǎn)開始讀取供應(yīng)染色體體基因所代表的貨物編碼,并由基因?qū)傩垣@取該批次貨物的剩余數(shù)量;s53:判斷是否結(jié)束生成方案;若供應(yīng)染色體起始點(diǎn)位置大于供應(yīng)染色體長(zhǎng)度或運(yùn)輸工具的剩余載重將為零,則停止生成采購方案;否則,進(jìn)入步驟s54;s54:令運(yùn)輸工具裝載貨物,生成購買與拼裝方案。根據(jù)裝船過程,2號(hào)采購原油被2號(hào)船分載6萬噸,被4號(hào)船分載4萬噸,因此,2號(hào)采購原油分兩批次采購和運(yùn)輸,采購時(shí)各批次的裝貨期申報(bào)也由2號(hào)船和4號(hào)船的具體運(yùn)輸過程確定,參見上文所述裝期選擇辦法。同理,6號(hào)采購原油被3號(hào)船分載8萬噸,被1號(hào)船分載11萬噸,因此,6號(hào)采購原油分兩批次采購和運(yùn)輸,采購時(shí)各批次的裝貨期申報(bào)也由3號(hào)船和1號(hào)船的具體運(yùn)輸過程確定,參見上文所述裝期選擇辦法。對(duì)于1號(hào)船,最終貨物裝載量為25.5萬噸,可按5%的誤差需求,增加裝載采購原油的數(shù)量至26萬噸,以提高船舶運(yùn)輸?shù)慕?jīng)濟(jì)效益。具體方法為:(1)校核計(jì)劃采購增量是否滿足5%的誤差需求,具體為(26-25.5)÷(第6號(hào)油品的需求總量19+第5號(hào)油品的需求總量14.5)=1.5%,滿足誤差精度要求;(2)對(duì)船載采購原油按需求總量分配采購增量,具體為6號(hào)油品采購增量=第6號(hào)油品的需求總量19÷(第6號(hào)油品的需求總量19+第5號(hào)油品的需求總量14.5)×總采購增量0.5=0.28萬噸,5號(hào)油品采購增量=第5號(hào)油品的需求總量14.5÷(第6號(hào)油品的需求總量19+第5號(hào)油品的需求總量14.5)×總采購增量0.5=0.22萬噸。第五,介紹四染色體編碼粒子所對(duì)應(yīng)的采購-拼船/車運(yùn)輸方案的適應(yīng)值計(jì)算步驟。對(duì)實(shí)數(shù)編碼的四染色體分別排序,得到整數(shù)編碼的四染色體。按上文所述方法從整數(shù)編碼的四染色體中解讀粒子所代表的采購拼船-運(yùn)輸方案。將船舶運(yùn)行費(fèi)用作為適應(yīng)值,船舶運(yùn)行費(fèi)用包含地理航程費(fèi)用、裝/卸港滯期費(fèi)用及靠港費(fèi)用三部分。航程費(fèi)用可根據(jù)上述行船路線計(jì)算;滯期費(fèi)用可根據(jù)船舶在裝港及卸港的非正常??繒r(shí)間計(jì)算;靠港費(fèi)可根據(jù)該船沿途所??扛劭诘恼髻M(fèi)標(biāo)準(zhǔn)計(jì)算。其中裝港滯期費(fèi)用主要分兩種情況,第一種是船舶過早抵達(dá)裝港,等待裝貨期期間需向船東繳納的費(fèi)用,第二種是船舶過晚抵達(dá)裝港,裝期已過,需向港口管理方繳納的費(fèi)用。寫港滯期費(fèi)用也分兩種情況,第一種是船舶抵達(dá)卸港后,卸港內(nèi)有其他船舶占用卸油泊位,等待泊位期間須向船東繳納的費(fèi)用;第二種是第一種是船舶抵達(dá)卸港時(shí)間超出需求油品的到貨期要求范圍,須向油品需求方繳納的費(fèi)用。對(duì)于裝卸原油而言,一般不允許超出時(shí)間期限,因此,第二種裝港滯期費(fèi)和第二種卸港滯期費(fèi)都要設(shè)為無窮大,以控制算法的方案搜索方向。第六:介紹群中粒子速度與位置更新操作。按上文介紹的采購-拼船/車運(yùn)輸?shù)倪m應(yīng)值計(jì)算方法,計(jì)算群中各粒子的適應(yīng)值,記錄各粒子所搜索到的自身歷史最優(yōu)值,記錄所有粒子所搜索到的全局歷史最優(yōu)值。根據(jù)下述公式更新各粒子的速度與位置。(1)速度更新公式為:(2)位置更新公式為:上述兩式中:指第k次迭代粒子i飛行速度矢量的第d維分量;指第k次迭代粒子i位置矢量的第d維分量;指粒子i搜索到的自身歷史最優(yōu)矢量的第d維分量;指所有粒子所搜索到的全局歷史最優(yōu)矢量的第d維分量;ω指保持原來速度的系數(shù),也叫做慣性權(quán)重。c1指粒子跟蹤自己歷史最優(yōu)值的權(quán)重系數(shù),它表示粒子自身的認(rèn)識(shí)。c2指粒子跟蹤群體最優(yōu)值的權(quán)重系數(shù),它表示粒子對(duì)整個(gè)群體知識(shí)的認(rèn)識(shí)。ξ,η指[0,1]區(qū)間內(nèi)均勻分布的隨機(jī)數(shù),用于增加搜索的隨機(jī)性。r指位置更新約束因子。最后,介紹判斷是否滿足終止條件,如果不滿足則返回步驟s5,如此循環(huán)直至滿足終止條件,如果滿足則結(jié)束計(jì)算并輸出最優(yōu)方案。在本實(shí)施例中,程序終止條件是預(yù)先設(shè)定的迭代次數(shù)(例如,迭代1000次程序終止)。如果不滿足則返回s5繼續(xù)迭代,如此循環(huán)直至滿足終止條件。如果滿足則結(jié)束計(jì)算并輸出最優(yōu)方案。本發(fā)明提供的基于粒子群算法的優(yōu)化采購及拼船/車運(yùn)輸方法,將采購-拼船/車運(yùn)輸過程分解為采購染色體x、裝貨期染色體d、需求染色體y與運(yùn)輸工具染色體z進(jìn)行耦合編碼,并利用粒子群算法予以求解。通過需求匹配編碼、配送定向解碼及裝期限定解碼等方法,避免無解假象并有效提高算法的尋優(yōu)效率,節(jié)約了大量的計(jì)算時(shí)間,實(shí)現(xiàn)了貨物采購及拼裝運(yùn)輸方案的優(yōu)化,降低了分散貨物采購-運(yùn)輸過程的物流成本,提高了集團(tuán)化公司的聯(lián)盟經(jīng)營(yíng)效益。該方法不僅可以應(yīng)用于原 油的優(yōu)化采購及遠(yuǎn)洋船運(yùn),也可以應(yīng)用于其他貨物的優(yōu)化采購及陸地車運(yùn),在此不再贅述。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、cd-rom、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。本申請(qǐng)是參照根據(jù)本申請(qǐng)實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來, 而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。術(shù)語“上”、“下”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡(jiǎn)化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對(duì)本發(fā)明的限制。除非另有明確的規(guī)定和限定,術(shù)語“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機(jī)械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個(gè)元件內(nèi)部的連通。對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以根據(jù)具體情況理解上述術(shù)語在本發(fā)明中的具體含義。本發(fā)明的說明書中,說明了大量具體細(xì)節(jié)。然而能夠理解的是,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本發(fā)明公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋呈反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求和說明書的范圍當(dāng)中。當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1