欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

港口拖輪動態(tài)調(diào)度方法

文檔序號:6582161閱讀:1199來源:國知局
專利名稱:港口拖輪動態(tài)調(diào)度方法
技術(shù)領(lǐng)域
本發(fā)明涉及港口調(diào)度領(lǐng)域,特別是拖輪動態(tài)調(diào)度領(lǐng)域。
背景技術(shù)
船舶進出港的順利程度是港口服務(wù)水平的一個重要標(biāo)志。拖輪是船舶的進出港過 程中不可或缺的作業(yè)船種。 為保證船舶進出港能到位、及時得到拖輪提供的服務(wù),港口必須配備足夠數(shù)量和 功率的拖輪,并應(yīng)根據(jù)港口具體情況設(shè)置拖輪??炕兀雇陷喕ㄗ钌贂r間到達作業(yè)泊位。 一方面,若拖輪數(shù)量過少,則無法為到港船舶提供必要及時的服務(wù),進出港船舶等待拖輪排 隊時間過長,使船舶在港費用增加,將使港口在與周邊港口的競爭中處于不利地位;反之, 拖輪過多將使拖輪利用率低甚至出現(xiàn)拖輪閑置,則浪費港口資源和增加管理費用。如何合 理配置拖輪,才能使港口在滿足現(xiàn)在需要的同時,適應(yīng)港口未來發(fā)展之需,這對每一個港口 經(jīng)營者來說顯得很重要。如何根據(jù)港區(qū)內(nèi)各碼頭靠離泊船舶情況和對拖輪的需求合理配置 調(diào)度拖輪,使港口拖輪數(shù)量適當(dāng),總體布局合理,減少拖輪購置和營運成本,節(jié)省拖輪作業(yè) 前無效航行時間,直接關(guān)系到船舶靠離泊安全和港口經(jīng)濟效益。 隨著航運業(yè)的發(fā)展,到港船舶日益增多,船型日益大型化,按照人工經(jīng)驗的調(diào)度方 案已經(jīng)難以保證船舶進出港任務(wù)的順利進行。 我國的某些港口對到離港船舶采用動態(tài)進出港制度。在這種制度下,船舶的到港 被集中在進港時間段進行,離港被集中在離港時間段進行。這兩個時間段的交替出現(xiàn),使得 相應(yīng)的拖輪作業(yè)也呈現(xiàn)出動態(tài)的特點;拖輪的各項輔助作業(yè),例如輔助進港,輔助出港,護 航和輔助移泊這些,在時間上顯得相對集中。本發(fā)明的研究僅是針對這種動態(tài)作業(yè)方式進 行。 港口由于受到航道寬度的限制,實行的是單航道航行,集中進港,集中出港。 一天 發(fā)生動態(tài)的時間為7:00(進港)9:00(出港),每隔兩個小時有進港動態(tài),每隔兩個小時有出
港動態(tài)。 當(dāng)N動態(tài)的進港計劃需要護航拖輪時,在第N-l個動態(tài)(進出港動態(tài))就派出拖
輪去錨地護航,使得N動態(tài)開始時,N動態(tài)進港計劃中的所有船舶都能到達航道口。此后N
動態(tài)進港計劃中船舶以一定的隊列進港,同時拖輪公司從拖輪集結(jié)地調(diào)出拖輪開向各個進
港船的目標(biāo)泊位。當(dāng)船舶到達時,拖輪協(xié)助船舶靠到泊位岸邊后返航。出港動態(tài)中,拖輪公
司向出港計劃中的各條船所在泊位調(diào)出拖輪,拖輪將船舶拉到航道中后,如果這條船需要
護航,就留下作業(yè)拖輪中的一條護送船舶出港,其余拖輪返航;如果這條船不需要護航,全
部拖輪返航。以上就是大致的動態(tài)拖輪作業(yè)流程,移泊的調(diào)度情況與之相似。 船舶到港前三天左右將船舶信息通報給港口務(wù)局,包括船舶的基本信息(船長,
吃水,船籍,所載貨物等等)以及預(yù)計??康拇a頭信息。港務(wù)局根據(jù)這些信息編制每個動態(tài)
的進港、出港和移泊計劃(可能一條船??恳粋€以上的泊位,因此需要移泊),并在動態(tài)開
始前將動態(tài)計劃下發(fā)給拖輪公司。拖輪公司根據(jù)動態(tài)計劃安排拖輪去作業(yè),完成計劃,也就完成了船舶的進出港任務(wù)。 —般每組進港船舶6-7艘或更多,依次排隊進港。拖輪一般按進港船舶的噸位大 小來相應(yīng)地分配拖輪的馬里和數(shù)量,配置原則如下
1、100米以下2600PS*1 ; 2、 100米至200米2600PS*2或者3200PS*2或者4000PS*2 ;
3、200米至250米:3200PS*2或者4000PS*2 ;
4、250米至300米:3200PS*3或者4000PS*2 ;
5、300米以上4000PS*2和5000PS*1 ; 有時在噸位差不多的情況下,大馬力拖輪一般多安排用于外輪。
大部分進港船是在快進港池時,由在那里等候的拖輪跟隨進入港池,這時拖輪與 進港船舶需要帶纜連接,由拖輪協(xié)助其靠泊碼頭。當(dāng)?shù)谝凰彝瓿珊?,拖輪又去進行下一艘船 的靠泊作業(yè),待進港船全部進入泊位靠好后,拖輪全部返回基地待命,等待為出港船舶助泊 作業(yè)。拖輪接到調(diào)度指令,到達待出港港船的位置將船舶拖至航道,出港船舶利用自身動力 出港,對于需要護航船舶,拖輪從港池內(nèi)一直護送到錨地,然后返航,有時返航途中拖輪又 護送需要進港護航船舶進港。拖輪調(diào)配中存在的問題
1 、人工調(diào)度難以應(yīng)對數(shù)量增多的船舶進港動態(tài) 隨著貿(mào)易往來的不斷加劇,集裝箱進出口數(shù)量的加大,往來港口的船舶數(shù)量迅猛 增加,港口的拓建使得一次可接收的船舶進港動態(tài)作業(yè)數(shù)量不斷增多,面對每個動態(tài)進出 港作業(yè)數(shù)量日益增多的船舶,從前的人工調(diào)度可能已經(jīng)無法應(yīng)對復(fù)雜大量的船舶動態(tài)調(diào)度 的需求,可能造成對調(diào)派去進行作業(yè)的拖輪的利用率不夠,調(diào)派不當(dāng),或者調(diào)度上的時間延 遲,雖然可以順利完成任務(wù),但是從經(jīng)濟,高效的角度來看,并不一定能夠達到預(yù)期最優(yōu)的 效果。 2、由于對拖輪的作業(yè)時間的把握不準(zhǔn)確而造成調(diào)配的不合理 —個優(yōu)秀的大船船長和引航員必須充分了解各類等級的拖輪的作業(yè)時間,并且及 時互相溝通。有時也會出現(xiàn)考慮不周到的情況,比如1號和14號泊位的拖輪同為2級拖輪, 此時15號泊位的船舶等待一條2級拖輪協(xié)助進港作業(yè),而1號泊位的2級拖輪已經(jīng)完成作 業(yè),因此引航員此時便根據(jù)經(jīng)驗調(diào)派1號泊位的2級拖輪前去作業(yè),但是他并沒有把握好14 號泊位的2級拖輪作業(yè)的完成時間,可能在1號泊位的2級拖輪剛剛駛到5號泊位時,14號 泊位的2級拖輪便可完成作業(yè),這樣就將造成對拖輪調(diào)配的不合理情況出現(xiàn)。雖然可以順 利作業(yè),但是可能會造成燃油成本的浪費。
3、對利用率和等待時間的取舍把握不到最佳 有時引航員會出現(xiàn)矛盾,即現(xiàn)有需要一條2級拖輪協(xié)助進港的船舶等待拖輪作 業(yè),但是此時所有的2級拖輪都在進行作業(yè),而有4級拖輪在等待命令進行作業(yè),此時是讓 船舶進行等待所取得的效率更加高,還是派較大等級的拖輪前去作業(yè)的效率高,人工調(diào)度 無法給出確切的回答,因為只有通過計算機模擬計算之后,才知道取舍哪一方面才是更加 高效和經(jīng)濟的。 4、人工調(diào)度無法估計最優(yōu)調(diào)配方案 人工調(diào)度是引航員根據(jù)自己的經(jīng)驗和知識,面對每個船舶進港動態(tài),給出較為順 暢的拖輪調(diào)配方案,如果可以在規(guī)定的動態(tài)時間里完成的話,那么便被視為這是一個相對合理的調(diào)配方案;但是在追求合理的同時,是否應(yīng)更考慮到適應(yīng)如今的市場經(jīng)濟的效率和經(jīng)濟性。畢竟人工調(diào)度的能力是有限的,可以考慮到的最優(yōu)方案也是有限的,而且不能像計算機那樣模擬出上百條上千條的調(diào)度方案提供參考,因此對于最優(yōu)調(diào)配方案的估計是不足的。 本發(fā)明通過研究,基于考慮人工調(diào)度無法高效地完成日趨復(fù)雜的拖輪動態(tài)調(diào)度情
況,因此希望通過計算機平臺,利用算法在約束條件的調(diào)度中的運用,找到較優(yōu)的調(diào)度方
案,使得船舶進出港能夠達到暢通、高效、最低成本的作業(yè)情況;并選用粒子群算法來解決
港口拖輪動態(tài)調(diào)度問題;考慮到該算法本身存在的、易于陷入局部最優(yōu)解,針對該缺陷,本
發(fā)明也提出相應(yīng)的手段,即熵函數(shù)和精英集的思想引入到算法中,對原有算法進行一定程
度的改進,最后給出了針對任意動態(tài)所求解的港口拖輪動態(tài)調(diào)度的最優(yōu)調(diào)度方案。 動態(tài)是港口用來劃分作業(yè)的一種規(guī)定。在動態(tài)船舶進出港制度下到港船舶集中
在進港動態(tài)進港;離港船舶集中在離港動態(tài)離港。假設(shè)進港動態(tài)和出港動態(tài)的持續(xù)時間都
為T。,港口泊位沿航道分布,其集合為B = [BpB2,... ,Bm]。 Tug= [tpt2,... ,tn]為港口
拖輪的集合,Level = [1,2,. . . ,L]為拖輪等級的集合,且Tug中的元素和Level中的元素
存在多一對應(yīng)關(guān)系。 進港動態(tài)開始之前,船舶在錨地等待,其中有一些船舶需要提前派出拖輪去護航,假設(shè)其集合為HH = [ShiPl, Ship2, . . . , ShipJ (H為需要護航的船舶總數(shù));在進港動態(tài)的開始時刻,進港船從航道口進入港區(qū),其集合為IN = [ShiPl, Ship2, . . . , ShiPl] (I為進港船數(shù)量);在出港動態(tài)的開始時刻,出港船??吭诟髯缘牟次唬浼蠟镺UT二 [ShiPl,Ship2, . . . , Ship。] (0為出港船數(shù)量)。于是一個進出港動態(tài)的任務(wù)集合可以表示如下
D = HH Y OUT Y IN (3-1)
調(diào)度的目標(biāo),就是保證調(diào)度合適的拖輪去完成任務(wù)集合中的所有任務(wù),并且要求這些任務(wù)盡可能早地被完成。 拖輪動態(tài)調(diào)度模型的建立,模型基于以下假設(shè)建立 1、進港船舶總是可以順利到達泊位邊,不會因為前船的阻礙而停下; 2、在本動態(tài)護航任務(wù)開始調(diào)度之前,之前的任務(wù)作業(yè)已經(jīng)全部完成。 從實際的拖輪調(diào)度作業(yè)數(shù)據(jù)統(tǒng)計中,假設(shè)2符合實際的概率高于90%?;谶@一
假設(shè),可以推斷所求出的最優(yōu)調(diào)度方案在整個時間跨度上仍應(yīng)為最優(yōu)。 拖輪調(diào)度總是以單船為最小作業(yè)單位來進行。因此動態(tài)任務(wù)集合DT可以較為詳細地表示如下

發(fā)明內(nèi)容
D T =
(3-2) 目+示函數(shù)
船舶等待拖輪作業(yè)時間之和最小。 目+示函數(shù)
派出拖輪的馬力溢出之和最小。
_ ■- —''=1 /=1
打破n和t2的量綱,模型的目標(biāo)函數(shù)f可以表示為
f = M i n { w , X f ,
(3-4)
(3-5)


(3-6)

(3-7)

i, j,k







n咖i])
n咖i])

X
約束條件如下
1、派出拖輪的馬力必須足夠,這體現(xiàn)在拖輪等級上
t 1
> r 1
1《
《K , 1《j《 《
nurn —
2、對同一個任務(wù)派出的多條拖輪的編號不能重復(fù)
^ 0, 1《i《K, 1《j, k《畫i, j
t—rii, j_t_n
j, k
k, i, j, k
N
1
3、拖輪前后作業(yè)時間不能沖突
V—",j "w,T—starti,j > T—endk,工,1《k《i《K, 1《j《nunii, 1《1《numk, G N* (3-8) 模型中涉及參數(shù)說明如下 K :DT中需要調(diào)度的船舶數(shù)量,K = H+I+0+C。 ShiPi :DT中的第i條船。 Yi :ShiPi等待拖輪的時間。
numi :對sHIPi進行作業(yè)需要的拖輪數(shù)量,也稱為拖輪輪次數(shù)。 r_li :ShiPi需要的拖輪的最小等級。
tA, j :對于ShiPi第j個輪次所調(diào)的拖輪的編號。(j G [1,皿叫]) t_li,j :對于ShiPi第j個輪次所調(diào)的拖輪的等級,與t—rii,j存在對應(yīng)關(guān)系。(j Wl, w2 :f\和f的權(quán)重系數(shù)。 對DT進行適當(dāng)?shù)木幋a后,就可以通過算法運行尋找最優(yōu)解。 每個任務(wù)(ShiPi)都可以用一個字符串來編碼表示。將任務(wù)分三類,進港任務(wù)為類 SA,護航任務(wù)為類SB,出港任務(wù)為類SC,那么每個任務(wù)的編碼可以分別表示為如下形式
(3-10)
進港任務(wù)SA 護 航
出港任務(wù)sc 移泊任務(wù)sD

("A,
務(wù)
("C, ("D,
PA, S 上述編碼中,各任務(wù)都以一個字符開頭;PA,i,PB,i,Pc,i在SA,i,SB,i和Sc,i中分別表 示對應(yīng)的作業(yè)泊位的編號;Pf, i表示移泊船的移出泊位,Pt, i表示移泊船的移入泊位A為 進港隊列距離修正A為錨地的編號A為護航標(biāo)記山,i, l2,i, . . . , ln,i是一個拖輪等級序 列。n為該船舶作業(yè)需要的拖輪數(shù)。雖然不同類型和不同噸位的船舶需要的拖輪不同,但 是在既定的港口拖輪分配方式下,對于每條船都可以確定所需要的最小拖輪數(shù)量和拖輪等 級,因此可以直接將船舶信息和拖輪需求情況進行編碼。以某進港任務(wù)為例,給出拖輪作業(yè) 示意圖(圖1), 拖輪動態(tài)調(diào)度問題的粒子群算法應(yīng)用 假設(shè)某動態(tài)任務(wù)集合D由p個進港任務(wù),q個出港任務(wù)和r個護航任務(wù)組成,即D —[Sb,i, Sb,2, , SB,r, Sc,r+i, Sc,r+2, , Sc,r+q, TA,r+q+1 , TA,r+q+2, , TA,r+q+p],其中白勺任務(wù)i需 要的拖輪輪次為皿nii,那么候選解維數(shù)d可以表示為
d= S打廳, (3-13) 種群規(guī)模N(即種群中候選解的數(shù)量)和d有密切的關(guān)系。若港作拖輪總數(shù)為M, 則解空間的容量應(yīng)為Md。因此,一方面需要維持N足夠大,以減少算法陷入局部最優(yōu)解的可 能性;另一方面又必須限制N在一定的范圍內(nèi),以控制算法的運行時間[18]。種群可表示為 N個長度為d的實型變量串,串中每個變量的取值范圍都是(0. 6, M+0. 4),并采用四舍五入 的方法將實型的候選解串投影成整型的方案串,方案串中的每個整數(shù)即對應(yīng)作業(yè)拖輪的編 號;種群速度亦可相應(yīng)的表示為N個長度為d的實型變量串。這樣的編碼方式能使得算法 的搜索范圍覆蓋所有的可行解,但是同時也會使得種群中出現(xiàn)一些不可行解,這些解可以 通過罰函數(shù)和迭代過程被淘汰。
適應(yīng)度函數(shù)f的設(shè)計 拖輪動態(tài)調(diào)度問題的適應(yīng)度函數(shù)f由四部分加權(quán)生成。假設(shè)種群中的某候選解


Ai)。


Ai = [x丄,X2,. . . ,xJ,Xj G
,Xj G R, i G [l,N],i G N* (3-14) 上式中M為港口拖輪總數(shù)量。那么相應(yīng)的,候選解的適應(yīng)度函數(shù)可以寫成f(D,
(1)等級適應(yīng)度函數(shù)L(D,Ai)
參照模型,引入罰函數(shù),定義每一個拖輪輪次的等級適應(yīng)值如下
1000 < "C/)-斗(w廠 )/10 ,m乂 2 且mj Se iV' (3-15) 50 x (w)畫wy. — f) wy > wy + f 上式中,對于方案中所派拖輪等級不足和等級過大設(shè)置了不同的罰系數(shù)。Ai的等
級適應(yīng)度函數(shù)L(D, Ai)按照下式定義
Z(A4) = i>(/> (3_16)
(2)延遲適應(yīng)度函數(shù)Y (D, Ai)和沖突適應(yīng)度函數(shù)C (D, Ai) 這兩個函數(shù)的計算過程和編碼的解讀過程關(guān)系緊密。以對進港任務(wù)串的解讀為 例,給出編碼解讀過程如圖2所示。 考慮到拖輪作業(yè)的前后工序相關(guān)性,計算某拖輪某次作業(yè)開始時間時會參考該拖 輪上次作業(yè)結(jié)束的時間和位置,并在計算結(jié)束后對本次拖輪結(jié)束作業(yè)的時間和位置作記錄。 延遲適應(yīng)度函數(shù)Y(D, Ai)是進出港船舶等待作業(yè)時間的總和,其表達式如下
<formula>formula see original document page 8</formula> 上式的單位為秒。 沖突適應(yīng)度函數(shù)C(D, Ai)是為了避免重復(fù)分配現(xiàn)象,即派同一條拖輪去某船舶的
多個拖輪輪次而設(shè)計的罰函數(shù)。在解讀完任務(wù)串后,對于每一條拖輪tj(l《j《M,M為拖
輪的總條數(shù)),都會有一個作業(yè)時間段記錄的集合
<formula>formula see original document page 8</formula> 上式中,nj為拖輪j的任務(wù)數(shù)量。如果定義函數(shù)Length([A, B]) = lB-Al,那么
C(D,Ai)就可以表示為:<formula>formula see original document page 8</formula> 上式中單位為秒,M為拖輪的總艘數(shù)。Ai中如果出現(xiàn)調(diào)用同一條拖輪去某船舶的 不同拖輪輪次作業(yè)的情況,就會有C(D, Ai) > 0。 [OO92] (3)利用率適應(yīng)度函數(shù)R(D,Ai) 這個函數(shù)計算按照方案Ai調(diào)度的拖輪平均利用率。函數(shù)按照下式定義
<formula>formula see original document page 8</formula>
上式中單位為秒,TD為動態(tài)總時間。
(4)總適應(yīng)度函數(shù)f (D, Ai)和解的判別 總適應(yīng)度函數(shù)f (D, Ai)按照實際作業(yè)的情況,打破以上四個適應(yīng)度函數(shù)的量綱并
且適當(dāng)加權(quán)生成,如下所示
<formula>formula see original document page 8</formula> 上式中的系數(shù)參照港口實際調(diào)度作業(yè)情況和算法的需求而取定。以進出港流暢程 度優(yōu)先,同時兼顧節(jié)省拖輪馬力為出發(fā)點,因此L(D,Ai)保持原來的數(shù)值不變,Y(D,Ai)的 權(quán)設(shè)為1/600。 C(D,Ai) >0是實際調(diào)度中絕對不允許出現(xiàn)的情況,因此給予其最大的權(quán)作為罰。R(D,Ai)是一個比較次要的參考指標(biāo),因此在這里保持原來的值不變。當(dāng)f(D,Ai)
< 1000時,方案可行。 種群進化過程和終止條件 在初始化生成了種群和種群速度之后,種群的進化基本按照標(biāo)準(zhǔn)粒子群算法進 行,根據(jù)每一代的種群最優(yōu)解和粒子最優(yōu)解來進行種群迭代更新。唯一不同的是,本發(fā)明中 的加速常數(shù)Cl, c2不是常數(shù),其值按照下式規(guī)定
<formula>formula see original document page 9</formula> 式中Ci,。為確定的加速常數(shù)初值,most為總計算代數(shù),gene為當(dāng)前代數(shù)。這種做 法比較常見,能夠改善算法在極值點附近的收斂情況。 如果某代的種群最優(yōu)解適應(yīng)值小于1,則算法找到滿意解,計算終止;如果種群的 最優(yōu)解在1到1000之內(nèi),且600代不出現(xiàn)更優(yōu)的解或者總進化代數(shù)已經(jīng)達到most,則算法 找到可行解,計算終止;如果直到總進化代數(shù)大于most時,種群最優(yōu)解適應(yīng)值仍大于1000, 則算法找不到可行解,計算終止。 根據(jù)任務(wù)串的長度決定種群中粒子的個數(shù)和粒子的初速度。每一個粒子,或稱為 候選解,代表著拖輪動態(tài)調(diào)度的一個求解方案。候選解的維數(shù)即為所派出的拖輪進行調(diào)度 的輪次總數(shù)。 模型中已經(jīng)建立了該拖輪動態(tài)調(diào)度模型的適應(yīng)度函數(shù)f,因此求解每個粒子的適 應(yīng)值(fitness value),表現(xiàn)為即計算每種拖輪動態(tài)調(diào)度方案中所產(chǎn)生的調(diào)度中的時間的 延遲。 同時將計算所得最優(yōu)解記錄下來,每一個最優(yōu)解都包含了四個罰函數(shù)的值和總的 適應(yīng)值,以及調(diào)派拖輪的輪次。 所以對于該模型而言,適應(yīng)值的數(shù)值越小,也就意味著該拖輪動態(tài)調(diào)度方案所浪
費的時間越少,方案越優(yōu)。
粒子群進化與更新 每一個粒子每一次迭代之后,都會產(chǎn)生一個適應(yīng)值,如果當(dāng)前這一代的適應(yīng)值小 于上一代的適應(yīng)值,那么粒子本生將自動更新其粒子最優(yōu)解。而種群的最優(yōu)解,則是由所有 粒子的最優(yōu)解中的最優(yōu)解進行更新。 這就表示,如果對某種拖輪動態(tài)調(diào)度方案的拖輪調(diào)派進行改動,如果可以獲得更 少的時間延遲,就表明這樣的調(diào)派調(diào)整是可行的,即保留下當(dāng)前改進后的調(diào)度方案,繼續(xù)對 下一個輪次進行改進。 根據(jù)粒子最優(yōu)解p(best)和種群最優(yōu)解g(best)以及每個粒子當(dāng)前的位置和速 度,來決定下一個粒子的位置和速度。 在拖輪調(diào)度的各種候選方案中,每一項方案都經(jīng)過不斷的調(diào)整調(diào)派順序和拖輪輪 次,盡可能地減少調(diào)度中出現(xiàn)的時間的延遲。
判斷中止條件 滿足以下3個條件中的任何一個條件的話,程序運行即中止,顯示當(dāng)前運行產(chǎn)生 的結(jié)果。
(1)迭代次數(shù)達到3000 表示程序的運行做多可進行3000次的迭代,如果3000次迭代內(nèi),都沒有能夠找到
某個適應(yīng)值在經(jīng)過600次迭代后始終保持不變的話,那么程序運行到3000代立即中止,取
當(dāng)前種群的最優(yōu)解為算法輸出解。 (2)適應(yīng)值> 1,并且連續(xù)600代保持不變 在程序運行過程中,如果適應(yīng)值在連續(xù)迭代600代之后,仍然沒有發(fā)生改變,那么
本發(fā)明就認(rèn)為此時的這個適應(yīng)值作為滿意解。 (3)適應(yīng)值< 1 如果出現(xiàn)適應(yīng)值小于1的情況,就認(rèn)為找到最優(yōu)解。
對粒子群算法的改進 根據(jù)標(biāo)準(zhǔn)的粒子群算法,只有每個粒子在之前所有代中的最優(yōu)解,才會被保留下來作為粒子進化的依據(jù)。這種做法錯過了迭代過程中一些有價值的信息,因為每個粒子的次優(yōu)解或較次優(yōu)解也可能存在著比另一個粒子的最優(yōu)解更加優(yōu)的可能性,因此標(biāo)準(zhǔn)粒子群算法中單一考慮粒子本身的最優(yōu)性的做法,可能導(dǎo)致種群中其他粒子的有價值次優(yōu)解的流失,使得算法過程前期算法的收斂速度受到限制。此外,在算法過程后期,當(dāng)所有點都極度逼近種群最優(yōu)解時,如果此時的種群最優(yōu)解是局部最優(yōu)解而非全局最優(yōu)解,那么算法很容易陷入局部最優(yōu)解,而找不到全局最優(yōu)解。本發(fā)明試圖用精英集與熵函數(shù)結(jié)合的方法,來改善標(biāo)準(zhǔn)粒子群算法的這兩個問題。 精英集是每個粒子在全部迭代過程中的所有解中,適應(yīng)值最優(yōu)的一定數(shù)量的解的
集合。這個集合會保留一些有價值的,但是在標(biāo)準(zhǔn)粒子群算法迭代過程中被忽略的解。在
迭代過程中的適當(dāng)時刻,精英集中的某些解會被用于替換種群中的某些解。 程序首先運行一代之后,取適應(yīng)值最小的前20個解,組成best 20,并且按照從小
到大的順序排列。然后程序進而運行,偽代碼編寫如下
If fitness value < best 20 Then update the current new fitness value in best 20
Kick out the original No20 and put the new fitness value into the queue
即原先精英集中上一代的第20個值被排除,此時的這個最優(yōu)解,根據(jù)其大小的排列,替換到相應(yīng)的1-20的位置上,就這樣精英集不斷地得到更新,精英集中列舉了所有拖輪調(diào)度可能方案中最優(yōu)的20種調(diào)度方案。 熵是混亂和無序的度量。熵值越大,混亂無序的程度越大。在算法中,可以用熵來表示整個粒子群在解空間中的分布廣度。粒子群分布得越廣,熵就越大。隨著迭代的進行,各粒子逐漸趨近于最優(yōu)解而相對聚攏,種群的熵值也隨這一過程逐漸減小。本發(fā)明希望在保證算法收斂速度的基礎(chǔ)上,適當(dāng)維持粒子分布的廣度,以保持粒子群的搜索范圍,避免算法收斂于局部最優(yōu)解。 本發(fā)明將粒子群中各個粒子與其他所有粒子之間的距離和定義為熵,其值即為熵值。熵函數(shù)也因此可表示為粒子在N維空間中的距離公式,艮卩
Shang = [ (al—a2) 2+(bl—b2) 2+... + (xl—x2)2]1/2 上式中1和2分別表示2個粒子,x表示這2個粒子所在空間的維數(shù)。 本發(fā)明在迭代過程中設(shè)立一個標(biāo)準(zhǔn)熵值變量,來保存之前迭代過程的熵值情況。
10首先取前十代的熵值的平均值作為標(biāo)準(zhǔn)熵值,然后根據(jù)以后每十代平均熵值的變化趨勢,對標(biāo)準(zhǔn)熵值作出調(diào)整。如果某十代的平均熵值小于標(biāo)準(zhǔn)熵值,則一次性地用精英集中的最優(yōu)解去隨機地替換種群中的任意解,希望可以維持熵值。如果連續(xù)的四十代中,四次替換都使得熵值變小,這時就根據(jù)最后十代的平均熵值對標(biāo)準(zhǔn)熵值進行調(diào)整。這種做法更具可靠性和平均性。 在系統(tǒng)的運行過程中,一旦熵值小于標(biāo)準(zhǔn)值,則將精英集中的最優(yōu)解隨機地替換
到原先的group的解中,此做法的目的在于希望可以做到人為地控制熵值的變化范圍,避
免熵值迅速減小所造成的系統(tǒng)收斂速度過快,而無法找到合理地最優(yōu)解的情況。 精英集與熵函數(shù)的引入,是希望可以在某種程度上改善前文提到的粒子群算法的
兩個缺陷。在算法迭代過程的前期,引入精英集中的解可以加快算法的收斂速度;而在算法
迭代過程的后期,引入精英集中的解可以適當(dāng)維持算法的搜索范圍,使得算法有更多的機
會跳出局部最優(yōu),找到全局最優(yōu)解。在這個過程中,用熵來衡量種群的廣度,即解的覆蓋范
圍,作為算法性能的一個指標(biāo)。


下面結(jié)合附圖與實施案例進一步說明本發(fā)明。圖l拖輪作業(yè)示意圖;圖2編碼解讀過程;圖3算例中拖輪等級劃分表;圖4任務(wù)串編碼;圖5拖輪協(xié)助大船靠泊示意圖;圖6拖輪護航大船出港示意圖;圖7實驗結(jié)果記錄;圖8算法改進后最優(yōu)解的適應(yīng)值變化情況;圖9最優(yōu)解取值情況;圖10最優(yōu)解對應(yīng)派遣工作的拖輪編號表;圖ll任務(wù)調(diào)度方案示例;圖12實驗結(jié)果記錄;圖13最優(yōu)解取值情況;圖14算法改進前后最優(yōu)解的適應(yīng)值變化情況對比圖15熵值替換前后的變化情況對比;圖16改進前后調(diào)度方案的對比。
具體實施例方式
下面通過一個實施案例,進一步說明本發(fā)明。 該例中,TD = 14400秒,M = 16, N = 8d, t = 2, v隨=20, most = 3000。 N = 8d就是種群數(shù)量的得到方式。種群數(shù)量是任務(wù)中輪次數(shù)量的8倍。t是允許的拖輪等級的溢出處數(shù)量。各拖輪的等級劃分如圖3算例中拖輪等級劃分表所示,所用數(shù)據(jù)為港口作業(yè)實際數(shù)據(jù)。該算例的任務(wù)編碼如圖4任務(wù)編碼所示
11
舉例說明上述任務(wù)串編碼的含義 B, 22, 2, 2分別表示護航任務(wù),在泊位22號作業(yè),錨地為2,需要派出作業(yè)的拖輪等級為2,即3000-3500馬力的拖輪,對應(yīng)港口可供調(diào)配的拖輪編號為5,6,7,其中調(diào)配的拖輪等級可以大于所需等級,但是不能小于所需等級。作業(yè)情況如圖5拖輪協(xié)助大船靠泊示意圖所示C, 4, 0, 2, 2分別表示出港任務(wù),在泊位4號作業(yè),無須護航,需要派出作業(yè)的拖輪一共要2艘,等級同為2,即3000-3500馬力的拖輪,對應(yīng)港口可供調(diào)配的拖輪編號為5,6,7,其中調(diào)配的拖輪等級可以大于所需等級,但是不能小于所需等級。作業(yè)情況如圖6拖輪護航大船出港示意圖所示 圖中所選取的該任務(wù)動態(tài)共有15個作業(yè)任務(wù),每個大寫英文字母代表一個作業(yè),
并且分別要調(diào)派相應(yīng)的拖輪去協(xié)助大船完成進出港。 算法改進后的求解結(jié)果 將算法模型運行十次,得到的10次運行結(jié)果如圖7實驗結(jié)果記錄所示
其中L,Y,C,R分別表示的是四個適應(yīng)度函數(shù)的計算值,f表示總的適應(yīng)值,進化代數(shù)表示截止到程序運行結(jié)束時,粒子所更新的迭代次數(shù)。而平均值記錄下了這10次的平均結(jié)果,用來與改進前的結(jié)果作比較,比較具有可靠性。 十次運算均得到可行解,且都沒有超過2. OO,取總適應(yīng)值最小的一次分析,其中粒子的最終迭代次數(shù)為3000次,相應(yīng)的適應(yīng)值變化情況如圖8算法改進后最優(yōu)解的適應(yīng)值變化情況;最優(yōu)解的取值情況如圖9所示各數(shù)值取整以后,如圖10最優(yōu)解對應(yīng)派遣工作的拖輪編號表所示,表中數(shù)字即為派遣出去工作的拖輪的編號。最優(yōu)解與計劃對應(yīng),可以清楚地看到每個任務(wù)分別派遣哪條拖輪去工作。圖11是調(diào)度方案的一個節(jié)選示例,該計劃任務(wù)為護航任務(wù),在泊位22號作業(yè),錨地為2,需要派出作業(yè)的拖輪等級為2。調(diào)度派出編號為8的拖輪,該拖輪等級為3,滿足作業(yè)需要,但是可能由于小級別的拖輪正在進行其他工作而無法承擔(dān)該任務(wù),或者級別3的拖輪可以比級別2的拖輪更加有效率地完成作業(yè)任務(wù)。派出時間表示在第1112. 6秒的時刻派出8號拖輪去進行護航作業(yè),完成時刻表示在第11461. 3秒的時后拖輪完成該作業(yè)任務(wù)。整個護航任務(wù)持續(xù)的作業(yè)時間是10348. 7秒,合計2. 87小時。算法改進前的求解結(jié)果將算法模型運行十次,結(jié)果如圖12實驗結(jié)果記錄所示十次運算均得到可行解,且9次的結(jié)果都在5以內(nèi)。取總適應(yīng)值最小的一次分析,最優(yōu)解的取值情況如圖13最優(yōu)解取值情況所示。
算法改進后的收斂性及調(diào)度方案的改善
收斂性的改善 對比算法改進前后最優(yōu)解的適應(yīng)值變化情況,可以看到兩者收斂情況的比較。由圖14可以看到,算法改進前后最優(yōu)解的適應(yīng)值變化情況對比 圖中實線表示的是添加精英集和熵函數(shù),對粒子群算法進行改進后得到的結(jié)果,而虛線表示的是改進前使用標(biāo)準(zhǔn)粒子群算法的結(jié)果??梢钥吹?,對粒子群算法進行改進后得到的收斂速度更快了,而且能夠找到更優(yōu)的適應(yīng)值。 本發(fā)明通過對引入熵函數(shù)后,利用精英集的替換,將替換前后的程序各自分別運行10次以后的平均情況作了分析,觀察熵值變化對于尋找最優(yōu)解的影響以及產(chǎn)生替換后熵值的變化趨勢,替換前后的熵值變化情況對比如圖15熵值替換前后的變化情況對比所
圖中較深的線表示的是添加精英集和熵函數(shù),對粒子群算法進行改進后得到的結(jié)果,而較淺的線表示的是改進前使用標(biāo)準(zhǔn)粒子群算法的結(jié)果??梢钥吹剑^程前期改進后的算法結(jié)果熵值下降明顯快于改進前,即收斂速度較改進前有明顯的提高;迭代過程后期改進后的算法結(jié)果熵值表現(xiàn)得更為穩(wěn)定,下降速度較改進前更為緩慢。此外,改進后的算法非但找到了更好的解,并且圖中深線的x軸跨度明顯小于淺線,這表明改進后算法找到結(jié)果所經(jīng)歷的迭代次數(shù)也比改進前減少很多。 由圖16改進前后調(diào)度方案的對比,可知算法改進前后的算例結(jié)果,改進后的拖輪動態(tài)調(diào)度方案在延遲適應(yīng)度函數(shù)上的改善相對較大,從原先改進前的427. 6減小到35. 34,(表中數(shù)據(jù)加粗顯示)也就說明了船舶等待拖輪協(xié)助靠泊的時間變短了,因此從效率的角度來看,改進后的調(diào)度方案一定是更加高效的。 另外,從等級溢出的數(shù)量也可以看出,算法改進前,需要溢出ll個等級,說明了拖輪的利用率仍然存在著很大的浪費,而算法改進后,等級的溢出被減小到9,等級的溢出一定會造成拖輪馬力的浪費,用較大馬力的拖輪去工作,成本也會相應(yīng)地增加,在如今的市場經(jīng)濟環(huán)境下,碼頭會更加重視成本的節(jié)約,因此,我們需要做到盡可能地減小派遣作業(yè)的拖輪等級的溢出,做到實打?qū)嵉剡M行調(diào)度作業(yè),從成本的角度來說,改進后的方案也是更加優(yōu)異的。 以上結(jié)果的運行環(huán)境為Windows XP下,自行編寫的eM-Plant程序中,計算機相關(guān)配置為AMD雙核1800MHz, 2G內(nèi)存,運算過程經(jīng)理CPU平均時間約20分鐘。考慮到拖輪動態(tài)計劃一般提前10小時左右就已經(jīng)傳遞到拖輪調(diào)度部門,因此,這一算法應(yīng)用于實際拖輪調(diào)度是合適的。
權(quán)利要求
港口拖輪動態(tài)調(diào)度方法,其特征在于包括以下步驟1)在分析拖輪動態(tài)計劃的基礎(chǔ)上,建立拖輪動態(tài)調(diào)度模型,提出一種動態(tài)編碼方式;2)以粒子群優(yōu)化算法對問題進行適應(yīng)度函數(shù)設(shè)計和調(diào)度方案求解;3)在標(biāo)準(zhǔn)粒子群算法的基礎(chǔ)上,引入精英集和熵函數(shù)的概念,對算法進行改進;4)通過與改進前程序運行結(jié)果的對比結(jié)果分析,發(fā)現(xiàn)結(jié)果確實得到一定程度的優(yōu)化和改進;進一步證明精英集與熵函數(shù)在粒子群算法中的應(yīng)用的可行性,找到使船舶進出港更為流暢的調(diào)度方法。
2. 根據(jù)權(quán)利要求1所述的調(diào)度方法,其特征在于所述的步驟1)的條件為進港船舶總是可以順利到達泊位邊,不會因為前船的阻礙而停下;在動態(tài)護航任務(wù)開始調(diào)度之前的任務(wù)作業(yè)已經(jīng)全部完成;拖輪前后作業(yè)時間不能沖突。
3. 根據(jù)權(quán)利要求l所述的調(diào)度方法,其特征在于所述的步驟2)適應(yīng)度函數(shù)適應(yīng)值的數(shù)值越小,也就意味著拖輪動態(tài)調(diào)度方案所浪費的時間越少,方案越優(yōu)。
4. 根據(jù)權(quán)利要求1所述的調(diào)度方法,其特征在于所述的步驟3)精英集的選取是為了保留整個種群所有粒子在全部迭代過程中的最優(yōu)解,即為種群最優(yōu)解;用精英集中的解去替換一般解,在迭代過程前期可以加速算法的收斂速度,同時在迭代過程后期可以維持熵值的穩(wěn)定。
全文摘要
本發(fā)明為港口拖輪動態(tài)調(diào)度方法,隨著航運業(yè)的發(fā)展,到港船舶日益增多,船型日益大型化,按照人工經(jīng)驗的調(diào)度方案已經(jīng)難以保證船舶進出港任務(wù)的順利進行。如何針對復(fù)雜多變的來船情況確定合理的拖輪調(diào)度方案,成為港口業(yè)務(wù)中需要解決的一個問題,開展這方面的研究勢在必行,具有重大意義。針對現(xiàn)有拖輪動態(tài)調(diào)度問題進行分析,本發(fā)明建立了拖輪動態(tài)調(diào)度模型,并且基于作業(yè)的實際情況將問題以適當(dāng)?shù)男问骄幋a,利用粒子群優(yōu)化算法對問題進行適應(yīng)度函數(shù)設(shè)計和調(diào)度方案求解,并且引入精英集和熵函數(shù)的概念,對算法進行改進;最后通過仿真,將算法改進后的方案,與改進前的方案進行比較分;掌握粒子群算法在港口拖輪動態(tài)調(diào)度中的應(yīng)用。
文檔編號G06Q10/00GK101782987SQ200910198889
公開日2010年7月21日 申請日期2009年11月17日 優(yōu)先權(quán)日2009年11月17日
發(fā)明者嚴(yán)偉, 何軍良, 宓為建, 萇道方, 邊志成, 郭錠峰, 陸后軍 申請人:上海海事大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
福安市| 古田县| 灵石县| 安乡县| 土默特左旗| 河北省| 五指山市| 屏东县| 新龙县| 东至县| 武清区| 白水县| 健康| 伊春市| 通州市| 安平县| 金昌市| 长治县| 西昌市| 女性| 清河县| 封开县| 甘谷县| 内丘县| 阳春市| 南宫市| 松溪县| 县级市| 浮梁县| 启东市| 广丰县| 长岭县| 甘肃省| 紫金县| 宜城市| 霞浦县| 彰化县| 利辛县| 高青县| 林芝县| 徐水县|