魏 鵬, 朱新河, 劉澤澤
(1.渤海大學(xué) 航運(yùn)學(xué)院, 遼寧 錦州 121013;2.大連海事大學(xué) 輪機(jī)工程學(xué)院, 遼寧 大連 116026)
以上研究主要從理論層面開展,不能為船舶航次規(guī)劃提供足夠的數(shù)據(jù)支持。唐磊等[9]將船舶到港時(shí)間窗作為約束條件,以航次全程營運(yùn)收益最大為目標(biāo),建立非線性規(guī)劃模型,但該模型未考慮多種船舶營運(yùn)支出和拋錨等實(shí)際問題。對此,本文充分考慮船舶航次的所有實(shí)際支出,在滿足到港時(shí)間要求的前提下,以航次總支出最少為目標(biāo),建立更符合實(shí)際的船舶最佳航速優(yōu)化模型,得到更有利于航次規(guī)劃的參考數(shù)據(jù)。
船舶在制訂航次規(guī)劃時(shí),整個(gè)航次的裝卸港、港口間距離、壓載航行速度限制、載貨航行速度限制和掛靠各港的時(shí)間窗均已知。在滿足各種限制并完成航次任務(wù)的前提下,詳盡考慮影響船舶最佳航速的實(shí)際因素,以航次總支出最少為目標(biāo),建立每段航程的航速優(yōu)化模型,得到各航程的最佳航速、到達(dá)各港口的時(shí)間及航次最少總支出,為航次規(guī)劃提供參考。
為使模型更加接近實(shí)際情況,同時(shí)合理簡化模型計(jì)算,在建模前作以下假設(shè):
1) 船舶在起始港出港,以引航員離開船舶為該航次的開始,經(jīng)過航行、裝卸貨,直至最后一個(gè)卸貨港,以船舶出港時(shí)引航員離開船舶為該航次結(jié)束。
2) 依次掛靠的港口、裝卸貨物的質(zhì)量和貨物的種類已知,且不存在貨物之間忌裝及迭放次序的問題。
3) 抵港時(shí)間是指船舶駛?cè)氩次坏臅r(shí)間,由錨地進(jìn)出港時(shí)間及燃油費(fèi)用忽略不計(jì)。
4) 船舶離港之后,定速航行,駛向下一目的港,不存在抵達(dá)下一目的港錨地之前拋錨的情形。
1.3.1模型建立
由此可得航次總支出原目標(biāo)函數(shù)為
(1)
限制條件為
Vlmin≤Vk(k+1)≤Vlmax
(2)
Vbmin≤Vk(k+1)≤Vbmax
(3)
tkmin≤tk≤tkmax
(4)
wk≥0
(5)
sk>0
(6)
式(1)~式(6)中:Z為船舶航次總支出;k為船舶掛靠港口標(biāo)號,k=1,2,3,…,m;αk1和αk2為駛?cè)?、駛出港口k時(shí)繳納的引航費(fèi)用;N為船舶登記凈噸位;βk為向港口k繳納的以登記凈噸位為計(jì)費(fèi)基數(shù)的港口使費(fèi)系數(shù);sk為在港口k裝卸貨時(shí)間;γk為向k港口繳納的以停泊時(shí)間為計(jì)費(fèi)基數(shù)的港口使費(fèi)系數(shù);a為固定成本系數(shù);Wk為港口k的錨泊時(shí)間;Lk(k+1)為由港口k至港口k+1的航程;Vk(k+1)為船舶由港口k航行至港口k+1的航速;Cf為燃油價(jià)格;[Vlmin,Vlmax]為載貨航行時(shí)的航速限制范圍;[Vbmin,Vbmax]為船舶壓載航行時(shí)的航速限制范圍;tk為到達(dá)港口k的時(shí)間;tk(k+1)為由港口k航行至港口k+1的時(shí)間;Fk(k+1)為由港口k航行至港口k+1的燃油消耗量;tkmin和tkmax為抵達(dá)港口k的最早、最晚時(shí)間。以上列出船舶整個(gè)航次的全部支出及限制條件。
1.3.2模型討論
在制訂船舶航次計(jì)劃時(shí),式(4)是滿足貨主要求、完成航次任務(wù)必須滿足的條件,但滿足式(4)可能會出現(xiàn)式(2)和式(3)無法滿足的情況,造成模型無解,無法為航次計(jì)劃提供數(shù)據(jù)參考。根據(jù)不同的壓載量和裝貨量,式(2)和式(3)的限制值也會發(fā)生變化,無疑使模型更加復(fù)雜。有約束非線性優(yōu)化問題的解常在可行域邊界位置[10],若優(yōu)化出的最佳航速為式(2)和式(3)的邊界限制速度,由于船舶不可能長期在極限速度下工作,因此優(yōu)化出的最佳航速并無實(shí)際操作意義。為此,將式(2)和式(3)作為參考條件,即計(jì)算時(shí)不作為約束,計(jì)算出結(jié)果后將最佳航速與之對比。若最佳航速滿足式(2)和式(3)的要求,說明船舶可按照該航速運(yùn)營,總支出最少;若最佳航速不滿足式(2)和式(3)的要求,可根據(jù)最佳航速偏離式(2)和式(3)的大小情況,選擇增大支出調(diào)整航速、更改船舶航次掛靠港及與貨主協(xié)商船舶到港時(shí)間等。
若將式(5)和式(6)中的拋錨等待時(shí)間wk及裝卸貨時(shí)間sk作為未知參數(shù)進(jìn)行優(yōu)化,則從式(1)中可看出,wk和sk的值越小,總支出越小。但是,該時(shí)間不是由船舶運(yùn)營公司決定的,而是由港口方?jīng)Q定,因此得到的優(yōu)化結(jié)果并無實(shí)際參考價(jià)值。當(dāng)船舶抵達(dá)錨地時(shí),向港口方提出進(jìn)港需求,排隊(duì)等待進(jìn)港,基于經(jīng)驗(yàn)及船舶代理公司提供的信息,可估算出拋錨等待時(shí)間wk。船舶進(jìn)港后裝卸貨物,每個(gè)港口裝卸某貨物的效率是一定的,因此同樣可基于以往經(jīng)驗(yàn),估算出裝卸貨時(shí)間sk。本文基于實(shí)際情況,賦予wk和sk定值,計(jì)算最佳航速。
(7)
至此,式(1)中的未知量只有Vk(k+1),約束條件只有式(7),如此處理,便可簡化計(jì)算量,使模型更加符合實(shí)際情況。
為對式(1)和式(7)進(jìn)行求解,選擇外點(diǎn)懲罰函數(shù)法[10],將限制條件組成懲罰項(xiàng)融入到原目標(biāo)函數(shù)中,構(gòu)建目標(biāo)函數(shù)為
(8)
通過迭代,r(n+1)=krn,不斷增大懲罰因子r(n),增大非可行域懲罰項(xiàng)函數(shù)值,使運(yùn)算結(jié)果向可行域靠近,原目標(biāo)函數(shù)Z與目標(biāo)函數(shù)φ(x,r(n))的極小值點(diǎn)具有一致性。在每次迭代的懲罰系數(shù)r(n)確定之后,采用鮑威爾算法求解多元目標(biāo)函數(shù)φ(x,r(n))的極值。
采用MATLAB編程,定義一個(gè)外點(diǎn)懲罰函數(shù),輸入為各段航速初始值x0,未知參數(shù)個(gè)數(shù)n,懲罰因子增大系數(shù)k,懲罰因子初始值q,計(jì)算精度r1,r2,r3,初始搜索步長h0;輸出為各航程航速V,抵港時(shí)間T,航次最小總支出Z。程序代碼如下:
function
[V,T,Z]=FHS(x0,n,k,q,r1,r2,r3,h0)
while(1)
%調(diào)用鮑威爾算法計(jì)算,返回各航速優(yōu)化結(jié)果
x=powell(x0,n,q,r2,r3,h0)
%判斷結(jié)果是否滿足限制要求,滿足則輸出結(jié)果
if ((g1(k)>=r1)&&(g1(k)>=r1))
%x為航速數(shù)組
V=x
%tm為抵達(dá)各港口時(shí)間函數(shù)
T=[t2(x(1)),t3(x(1),x(2)),t4(x(1),x(2),x(3)),……,tm(x(1),x(2),x(3),……,x(m-1))]
%ff1為航次總支出函數(shù)
Z=ff1(x)
break;
%不滿足限制要求,則將本次尋優(yōu)值作為下次迭代的初始值,增大懲罰系數(shù),繼續(xù)尋優(yōu)
else
x0=x;
q=k×q;
end
end
采用計(jì)算機(jī)易于編程的鮑威爾算法來計(jì)算多元函數(shù)的極值點(diǎn),程序如下:
function powell=powell(x0,n,q,r2,r3,h0)
%生成n×n的單位陣作為初始搜索方向
d=eye(n);
k=1;
%xx數(shù)組用來存放可能的最終結(jié)果
xx(1,1:n)=x0;
while (1)
%y用來存放中間結(jié)果
y(1,1:n)=xx(k,1:n)
% 循環(huán)調(diào)用黃金分割函數(shù),以y(j,1:n)為初始點(diǎn),沿d(j,1:n)方向?qū)?yōu),返回方向系數(shù)大小s(j),將尋優(yōu)點(diǎn)存于y(j+1,1:n)中
for (j=1:1:n)
s(j)=HJ(y(j,1:n),d(j,1:n),h0,q,r3);
y(j+1,1:n)=y(j,1:n)+s(j).×d(j,1:n);
end
%將產(chǎn)生最新尋優(yōu)方向存于d(n+1,1:n)中,產(chǎn)生的可能最終結(jié)果存于xx(k+1,1:n)中
d(n+1,1:n)=y(n+1,1:n)-y(1,1:n);
s(n+1)=HJ(y(n+1,1:n),d(n+1,1:n),h0,q,r3);xx(k+1,1:n)=y(n+1,1:n)+s(n+1).×d(n+1,1:n);
%判斷最新尋優(yōu)方向d(n+1,1:n)的二范數(shù)是否達(dá)到計(jì)算精度,滿足則計(jì)算結(jié)束
if (norm(d(n+1,1:n),2) break; else %沒有達(dá)到計(jì)算精度,計(jì)算出下列值,其中ff為目標(biāo)函數(shù) y(n+2,1:n)=2.×y(n+1,1:n)-y(1,1:n); F0=ff(y(1,1:n),q); F2=ff(y(n+1,1:n),q); F3=ff(y(n+2,1:n),q); fori=1:1:n gg(i)=ff(y(i,1:n),q)-ff(y(i+1,1:n),q); end %找到最差的尋優(yōu)方向 m=find(gg==max(gg)); %如果滿足判斷式,則用最新的尋優(yōu)方向d(n+1,1:n)替換掉最差的尋優(yōu)方向d(m,1:n) if (F0>F3)&&((F0-2×F2+F3)×(F0-F2-F)2<0.5×F×(F0-F3)2) d(m,1:n)=d(n+1,1:n); end k=k+1; end end %把存于xx(k+1,1:n)中的可能最終結(jié)果作為函數(shù)返回值 powell=xx(k+1,1:n); end 為檢驗(yàn)所提模型和程序的實(shí)用性,以某船某航次實(shí)際規(guī)劃航線為例加以說明。該船凈噸位N=11 367 MT,固定費(fèi)用a=3 500美元/d,設(shè)計(jì)航速為 10~15 kn,主機(jī)燃油價(jià)格Cf=180美元/t。航次規(guī)劃為:由布倫斯比特爾(港口節(jié)點(diǎn)1)壓載航行至哈爾姆斯塔德(港口節(jié)點(diǎn)2)和馬爾默(港口節(jié)點(diǎn)3)2個(gè)裝貨港,再載貨航行至內(nèi)姆魯特山(港口節(jié)點(diǎn)4)和尼古拉耶夫(港口節(jié)點(diǎn)5)2個(gè)卸貨港,V0=12 kn時(shí)的F0及其他航次參數(shù)見表1。 表1 船舶航次參數(shù) 通過MATLAB軟件優(yōu)化計(jì)算,結(jié)果見表2。從表2中可看出每段航程的最佳航速,抵達(dá)各節(jié)點(diǎn)的時(shí)間均滿足抵港時(shí)間窗口的限定,同時(shí)得到航次最小支出。因此,該模型計(jì)算結(jié)果可為該類航行規(guī)劃提供數(shù)據(jù)參考,具有很強(qiáng)的實(shí)用性。 表2 優(yōu)化結(jié)果 國際燃油價(jià)格變化對航運(yùn)市場的影響巨大。[11]對此,根據(jù)本文模型、程序和船舶數(shù)據(jù),以燃油價(jià)格Cf為變量,分析討論Cf變化對各節(jié)點(diǎn)間經(jīng)濟(jì)航速的影響(見圖1)。從圖1中可看出:隨著Cf由180美元/t上升至330美元/t,各節(jié)點(diǎn)間的經(jīng)濟(jì)航速不斷發(fā)生調(diào)整;隨著Cf的提高,船舶經(jīng)濟(jì)航速整體呈下降趨勢。因此,Cf提高導(dǎo)致船舶運(yùn)營平均經(jīng)濟(jì)航速降低,航次航行時(shí)間增加。 Cf變化,船舶采用經(jīng)濟(jì)航速運(yùn)行,得到航次最小總支出Zmin(見圖2)。由圖2可知,Cf為330美元/t時(shí)的Zmin較180美元/t時(shí)的Zmin增長1/5左右,Zmin隨著Cf增加呈直線上升趨勢。因此,Cf上漲導(dǎo)致船舶航次最小總支出急劇增加。 本文以航次支出最少為目標(biāo),在滿足貨主對船舶到港時(shí)間要求的前提下,充分考慮船舶航次的所有實(shí)際支出,建立實(shí)用性更強(qiáng)的船舶最佳航速優(yōu)化模型。同時(shí),討論優(yōu)化模型中的設(shè)計(jì)航速限制、裝貨時(shí)間和拋錨時(shí)間,基于實(shí)際情況,合理簡化模型計(jì)算,將航速限制作為參考條件,不融入到目標(biāo)函數(shù)中;賦予裝貨時(shí)間和拋錨時(shí)間定值,使模型更加符合實(shí)際,更具參考價(jià)值。采用更易計(jì)算機(jī)編程的外點(diǎn)懲罰函數(shù)和鮑威爾算法對模型中的有約束非線性問題進(jìn)行求解,給出相關(guān)函數(shù)和算法的主要程序。根據(jù)某船實(shí)例計(jì)算出各航程的最佳航速、船舶到港時(shí)間和航次最小總支出,驗(yàn)證該模型和程序的有效性及實(shí)用性,為解決船舶航次規(guī)劃的實(shí)際問題提供可靠方法。最后,討論燃油價(jià)格對經(jīng)濟(jì)航速的影響,研究結(jié)果表明,燃油價(jià)格上漲,船舶運(yùn)營平均經(jīng)濟(jì)航速降低,航次航行時(shí)間增長,航次最小總支出急劇增加。 [1] 謝光明. 船舶降速航行的經(jīng)濟(jì)性和排放變化分析[D].大連:大連海事大學(xué),2009. [2] 毛衛(wèi)斌. 船舶經(jīng)濟(jì)航速和降速航行的經(jīng)濟(jì)性分析[J]. 青島遠(yuǎn)洋船員學(xué)院學(xué)報(bào),1999(4):45-51. [3] 周維民. 船舶使用經(jīng)濟(jì)航速淺析[J]. 中國遠(yuǎn)洋航務(wù),2011(11):86-88. [4] 芮震峰,陸冬青,石愛國. 一種艦船實(shí)際航速的計(jì)算方法[J]. 艦船科學(xué)技術(shù),2006(1):37-40. [5] 李錚,潘曉萌. 船舶航速優(yōu)化算法研究[J]. 艦船科學(xué)技術(shù),2016(12):7-9. [6] 謝新連.船舶運(yùn)輸管理與經(jīng)營[M].大連:大連海事大學(xué)出版社,2009:189-195. [7] 劉勤安,段樹林,邢輝,等.大型低速船用柴油機(jī)工作過程數(shù)值模擬及優(yōu)化[J].大連海事大學(xué)學(xué)報(bào),2011,37(3): 107-110. [8] 殷翔宇,張俊,謝新連. 不定期船最佳航速優(yōu)化研究[J]. 中國航海,2012,35(1):94-97. [9] 唐磊,謝新連. 帶時(shí)間窗約束的不定期船航速優(yōu)化模型[J]. 物流技術(shù),2014(3):132-135. [10] 王興華. 懲罰函數(shù)法的改進(jìn)算法及應(yīng)用研究[D].秦皇島:燕山大學(xué),2009. [11] 李新偉,余思勤,陳金海. 油價(jià)變動對船舶租金的影響[J]. 中國航海,2016, 39(2):115-119.3 算例分析
3.1 模型和程序的實(shí)用性分析
3.2 燃油價(jià)格變化對經(jīng)濟(jì)航速的影響
4 結(jié)束語