垃圾回收物流仿真系統(tǒng)設(shè)計(jì)_第1頁(yè)
垃圾回收物流仿真系統(tǒng)設(shè)計(jì)_第2頁(yè)
垃圾回收物流仿真系統(tǒng)設(shè)計(jì)_第3頁(yè)
垃圾回收物流仿真系統(tǒng)設(shè)計(jì)_第4頁(yè)
垃圾回收物流仿真系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第十一章垃圾回收物流仿真系統(tǒng)設(shè)計(jì)

11.1垃圾回收物流系統(tǒng)介紹

城市某一區(qū)域,共有7個(gè)居民社區(qū),每個(gè)社區(qū)有一個(gè)固定垃圾投放處,兩個(gè)垃圾箱分

別投放完全廢棄垃圾和可回收運(yùn)用垃圾;天天有專(zhuān)門(mén)公司(垃圾解決公司)派運(yùn)送車(chē)收集垃

圾,將垃圾從居民區(qū)運(yùn)送之中轉(zhuǎn)站,再由中轉(zhuǎn)站運(yùn)至目的地一垃圾解決中心。

仿真程序研究如何設(shè)計(jì)物流系統(tǒng),可以使收集系統(tǒng)在滿足

時(shí)間約束、載重約束的條件下,使垃圾解決公司的物流息成

本最低。系統(tǒng)配置的項(xiàng)目重要有車(chē)輛載重量、隨車(chē)工作人員

數(shù)、客戶滿意度。

本節(jié)內(nèi)容可以參看隨書(shū)光盤(pán)models/垃圾回收仿真文獻(xiàn)夾下

的dumpreversesim.mod,模型運(yùn)營(yíng)結(jié)果參看此目錄下的

reverse.xls文獻(xiàn)。

11.2數(shù)據(jù)信息

仿真系統(tǒng)涉及的數(shù)據(jù)信息如下:

11.2.1地理及需求信息

各個(gè)收集點(diǎn)所有的人口數(shù)、距離垃圾轉(zhuǎn)運(yùn)站、公司停車(chē)場(chǎng)的距離信息如表11.1所示。

各收集點(diǎn)之間以及停車(chē)場(chǎng)和轉(zhuǎn)運(yùn)站之間的距離信息如表H.2所示。

表11.1收集點(diǎn)信息

收集點(diǎn)居民數(shù)

收集點(diǎn)距離停車(chē)場(chǎng)距離距離垃圾轉(zhuǎn)運(yùn)站距離

people(i)(千

名稱distance(ip)(km)distance(it)(km)

人)

DumpOOl1.5616

Dump0021.451627

Dump0031.652624

Dump0041.853836

Dump0051.42826

Dump0062.051614

Dump0071.6108

表11.2點(diǎn)間距離

途徑起點(diǎn)途徑終點(diǎn)距離(km)符號(hào)

Tran_stationCorppark11Distance(pt)

DumpOOlDump00210Distance(12)

Dump002Dump00310Distance(23)

Dump003Dump00412Distance(34)

Dump004Dump00510Distance(45)

Dump005DumpOOO12Distance(56)

Dump006Dump0076Distance(67)

11.2.2與收集車(chē)輛有關(guān)的信息

?固定成本[pricc(i)]:收集車(chē)輛的購(gòu)買(mǎi)費(fèi)用;

?可變成本[cost(i)]:車(chē)輛的行駛費(fèi)用、維護(hù)費(fèi)用和雇員工資;

?行駛速度:分為空軍行駛速度[unloadspeed(i)]和載重行駛速度[loadspeed(i)];

?收集時(shí)間[loadtime(i)]:在垃圾收集點(diǎn)收集垃圾所需的時(shí)間

卸載時(shí)間[unloadlimMi)]:在轉(zhuǎn)運(yùn)站卸載垃圾所需的時(shí)間

具體信息如表11.3所示:

表11.3收集車(chē)輛信息

車(chē)輛載重固定成本可變成本載重速度空載速度人員人員工資收集時(shí)間卸載時(shí)間

名稱t萬(wàn)元元/kmkm/hkm/h人元/天.人minmin

車(chē)1Xi2+XiX,6072P,603+y*6/Pi3+Xi*6/Pi

車(chē)2x22+1.2*X2x26072P2602+y*8/P?2+X#6/P,

說(shuō)明:

車(chē)1用來(lái)收集不可回收垃圾;車(chē)2用來(lái)收集可回收運(yùn)用垃圾;

XI,X2為現(xiàn)有兩種車(chē)的噸位數(shù),XI取值:3.4或5噸;X2取值:1.5;2;2.5;

y為每次收集的垃圾量,單位一噸;

Pl,P2為兩種車(chē)可配備的隨車(chē)工作人員數(shù)(可以是1,2,3)o

11.2.3與垃圾相關(guān)的信息

人均垃圾量:平均每人天天產(chǎn)生的垃圾數(shù)量;

垃圾比例:各種垃圾成分所占比例。

假設(shè)人均垃圾量服從均值為1.2kg/天的埃爾郎分布,垃圾

成分分為兩類(lèi):一類(lèi)為可反復(fù)運(yùn)用資源,一類(lèi)為無(wú)用需銷(xiāo)毀

垃圾,兩者比例為1:2o

11.3收集垃圾的成本函數(shù)

現(xiàn)在假設(shè)仿真一年365天的垃圾回收工作,決定兩種型號(hào)的車(chē)配置何種噸位以及隨車(chē)

工作人員數(shù),垃圾回收物流成本(TotalLogisticCost,TLC)最低。

TLC二車(chē)1成本+車(chē)2成本

車(chē)1所耗成本=1的固定成本+1的可變成本+1的服務(wù)時(shí)間成本+1的人員成本

即:

TLC=CC1+CC2

CC[i]=Xri]+V[il+S[il+P[i]*365*60

S[i]=(runtime[i]-240)*m

S⑴為垃圾回收的服務(wù)時(shí)間成本,m為收集時(shí)間對(duì)服務(wù)時(shí)間成本的處罰因子。垃圾回收公

司在十二點(diǎn)之前收集完畢.社會(huì)效應(yīng)好,給予獎(jiǎng)勵(lì);在十二點(diǎn)后完畢,社會(huì)滿意度低,影響公

司信譽(yù),成本增長(zhǎng)。

runtime。]為垃圾車(chē)將垃圾所有回收完畢的最終時(shí)間,也即

垃圾車(chē)天天的運(yùn)營(yíng)時(shí)間;

11.4系統(tǒng)邏輯結(jié)構(gòu)

?此垃圾回收物流系統(tǒng)的邏輯結(jié)構(gòu)分為五個(gè)子模塊:垃圾產(chǎn)生模塊、叫車(chē)模塊、收集模塊、

收工模塊、數(shù)據(jù)解決模塊。

?垃圾產(chǎn)生模塊天天收集工作開(kāi)始時(shí),系統(tǒng)根據(jù)社區(qū)的人數(shù)、人均垃圾量、兩種垃圾

量的比例,通過(guò)愛(ài)爾朗隨機(jī)分布函數(shù),隨機(jī)產(chǎn)生各個(gè)社區(qū)的兩種垃圾數(shù)量,分別存放

入各個(gè)社區(qū)的兩個(gè)垃圾箱內(nèi)。

?叫車(chē)模塊在垃圾存放入各個(gè)社區(qū)的兩個(gè)垃圾箱過(guò)程中,根據(jù)每種垃圾的總量以及

每種垃圾車(chē)的載重量:生成叫車(chē)的次數(shù)。

?收集模塊叫車(chē)次數(shù)擬定之后,車(chē)輛根據(jù)需求,沿著最短途徑依次收集垃圾。在收集

過(guò)程中,在一個(gè)垃圾點(diǎn),假如垃圾車(chē)收集滿了或當(dāng)天的收集工作所有完畢,車(chē)輛駛向

垃圾中轉(zhuǎn)站,進(jìn)行卸載操作;假如垃圾車(chē)未滿,則裂向下一最近垃圾收集點(diǎn)繼續(xù)收集。

?收工模塊當(dāng)天的收集工作所有完畢之后,車(chē)輛駛向公司停車(chē)場(chǎng),當(dāng)天收集工作完

畢。

數(shù)據(jù)解決模塊天天車(chē)輛收工時(shí),

11.5仿真模型的建立

根據(jù)系統(tǒng)邏輯結(jié)構(gòu)和數(shù)據(jù)信息,我們建立具有7個(gè)垃圾收集

點(diǎn)、一個(gè)垃圾轉(zhuǎn)運(yùn)站的WITNESS垃圾回收仿真模型。具體環(huán)

節(jié)如下:

11.5.1元素定義Difine

建立仿真模型時(shí),一方面定義仿真模型中所需的元素,并設(shè)計(jì)它們的可視效果。我們將設(shè)計(jì)

的元素分為兩類(lèi)一一實(shí)體元素和邏輯元素,名稱如下。

表11.4實(shí)體元素列表:類(lèi)型說(shuō)明

元素名稱

dumpa⑴?dumpa(7)Part七個(gè)社區(qū)不可回收的垃圾

dumpb(l)?dumpb(7)Part七個(gè)社區(qū)可回收運(yùn)用的垃圾

dumpcart(1)Vehicle專(zhuān)門(mén)回收dumpa的垃圾回收車(chē)

dumpcart(2)Vehicle專(zhuān)門(mén)回收dumpb的垃圾回收車(chē)

huffAra(1)?huffera(7jRuffnr各社區(qū)不可回收垃圾的垃圾箱

bufferb(l)?bu「ferb(7)buffer各社區(qū)可回收運(yùn)用垃圾的垃圾箱

CorpparkTrack公司停車(chē)場(chǎng),

Transfer_stationBuffer垃圾轉(zhuǎn)運(yùn)站

road(i,j)Track由節(jié)點(diǎn)實(shí)體i向節(jié)點(diǎn)實(shí)體j方向的道路

road(j,i)track由節(jié)點(diǎn)實(shí)體j向節(jié)點(diǎn)實(shí)體i方向的道路

Geta(l)'geta(7)Track車(chē)輛將通過(guò)它們來(lái)進(jìn)行垃圾a的回收

Getb(l)^getb(7)Track車(chē)輛將通過(guò)它們來(lái)進(jìn)行垃圾b的回收

表11.5邏輯類(lèi)型說(shuō)明

元素一變量列表:

變量名稱

people(7)integer各社區(qū)的居民數(shù)量

capacitycart(2)integer兩種垃圾車(chē)每次可收集的垃圾數(shù)量,即載重量

□demand(2)integer天天對(duì)兩種垃圾車(chē)的需求次數(shù)

labor(2)integer兩種垃圾車(chē)的隨車(chē)工作人員數(shù)

SalaryReal工作人員天天工資

price(2)Real兩種垃圾車(chē)的購(gòu)買(mǎi)價(jià)格

costrate(2)Real兩種垃圾車(chē)的運(yùn)營(yíng)費(fèi)率

unloadspeed(2)Real兩種垃圾車(chē)的空載速度

loadspeed(2)Real兩種垃圾車(chē)的實(shí)載速度

loadnum(2)integer兩車(chē)輛到達(dá)垃圾收集點(diǎn)可收集的垃圾數(shù)量

nfree(2)integer兩車(chē)輛剩余載重能力

Nparts7)integer每一垃圾收集點(diǎn)在特定仿真時(shí)點(diǎn)剩余垃圾量

loadtime(2)Real兩車(chē)輛收集垃圾所需的時(shí)間

unloadtime(2)Real兩車(chē)輛卸載垃圾所需的時(shí)間

runtime(2,3)Real存儲(chǔ)車(chē)輛的時(shí)間參數(shù),runtime(k,1)存儲(chǔ)仿真鐘的當(dāng)前數(shù)值,

runtime(k,2)存儲(chǔ)車(chē)輛k在當(dāng)天的運(yùn)營(yíng)時(shí)間,runtime(k,3)存儲(chǔ)

車(chē)輛k在仿真過(guò)程中總的運(yùn)營(yíng)時(shí)間

TimcwcighReal時(shí)間處罰因子

timecost(2)Real時(shí)間處罰成本

sumcostReal目的函數(shù)。bjfun中用于記錄系統(tǒng)運(yùn)營(yíng)的總費(fèi)用

定義一個(gè)實(shí)數(shù)型邏輯函數(shù)objfunO,用于計(jì)算和記錄

系統(tǒng)運(yùn)營(yíng)一年365天所花費(fèi)的總費(fèi)用。

11.5.2元素顯示display

各個(gè)元素的顯示設(shè)立如圖11.1所示。

。小區(qū)4

小區(qū)3

di|nptransferstatipn

小區(qū)2

corppn

圖11.1

垃圾回收物流仿真系統(tǒng)可視化界面

11.5.3元素具體設(shè)計(jì)

?在該子模塊中定義隨著仿真鐘的推動(dòng),裝載垃圾的邏輯條件。該系統(tǒng)的工作班次制度采

用天天工作8小時(shí),每一仿真時(shí)間等價(jià)于現(xiàn)實(shí)時(shí)間一分鐘。

?為了實(shí)現(xiàn)系統(tǒng)的仿真運(yùn)營(yíng),需要對(duì)系統(tǒng)中的元素進(jìn)行具體設(shè)計(jì)。

系統(tǒng)初始化程序設(shè)計(jì)(initializeactions),通過(guò)選擇系統(tǒng)菜單model/initialize

actions…菜單項(xiàng),得到初始化程序編輯框,輸入如下程序:

personum(1)=1.5

personum(2)=1.45

personum(3)=1.65

personum(4)=1.85

personum(5)=1.4

personum(6)=2.05

personum(7)=1.6

!給各社區(qū)的人數(shù)賦初值,單位:千人

FORnum=1TO7

meandump(num)=1.2*personum(num)*1000

NEXT

!分別生成天天七個(gè)社區(qū)產(chǎn)生垃圾的均值

setcapacityofdumpcart1tocapacitycart(1)

setcapacityofdumpcart2tocapacitycart(2)

!分別設(shè)定兩個(gè)車(chē)輛的載重量,由變量數(shù)組capacitycarl(1)和capacitycart(2)決定。

unloadtime=0!卸載時(shí)間

FORnum=1TO7

moddemanda(num)-0

moddemandb(num)=0!決定叫車(chē)次數(shù)的變量

NEXT

FORnum=1TO4

roadchoicea(num)=0

roadchoiccb(num)=0!最短途徑控制變量

NEXT

FORnum=1TO3

runtimea(num)=0

runtimob(num)=0!車(chē)輛運(yùn)營(yíng)時(shí)間控制變量

NEXT

intervaltime=1440!天天的分鐘數(shù)

timeweigh=5!時(shí)間處罰因子

laborneeda=1

laborneedb=1!兩輛車(chē)隨車(chē)工作人員數(shù)

!對(duì)變量賦初始值

?各個(gè)社區(qū)垃圾的具體設(shè)計(jì)

表11.6垃圾元素具體設(shè)計(jì)列表

First

NameInterarrivalLotsizeTo

arrival

Dumpal0.00011440ERLANG(meandump(1)/3,3,1)PUSHtobufferal

Dumpa20.00021440ERLANG(meandump(2)/3,3,2)PUSHtobuffera2

Dumpa30.00031440ERLANG(meandump(3)/3,3,3)PUSHtobufferac.

Dumpa40.00041440ERLANG(meandump(4)/3,3,4)PUSHtobuffera4

Dumpao0.00051440ERLANG(meandump(5)/3,3,5)PUSHtobuffera5

Dumpa60.00061440ERLANG(meandump(6)/3,3,6)PUSHtobuffera6

Dumpa70.00071440ERLANG(meandump(7)/3,3,7)PUSHtobuffera7

Dumpbl0.00011440ERLANG(meandump(1)/3,3,8)PUSHtobufferbl

Dumpb20.00021440ERLANG(meandump(2)/3,3,9)PUSHtobufferb2

Dumpb30.00031440ERLANG(meandump(3)/3,3,10)PUSHtobufferbS

Dumpb40.00011440ERLANG(meandump(4)/3,3,11)PUSHtobufferb4

Dumpb50.00051440ERLANG(meandump(5)/3,3,12)PUSHtobufferbS

Dumpb60.00061440ERLANG(meandump(6)/3,3,13)PUSHtobufferb6

Dumpb70.00071440ERLANG(meandump(7)/3,3,14)PUSHtobufferb7

垃圾名稱*一天的分鐘數(shù)Meandump為通過(guò)各社區(qū)人數(shù)計(jì)算出來(lái)的決定垃圾的存放

變量數(shù)組

?*決定天天各個(gè)社區(qū)的垃圾依次產(chǎn)生,以便于生產(chǎn)叫車(chē)次數(shù)。

?運(yùn)送車(chē)輛具體設(shè)計(jì)

表11.7運(yùn)送車(chē)輛具體設(shè)計(jì)列表

NameUnloadspeedLoadspeedto

Dumpcai't11.21.0PUSHtocorppark(1)

Dumpcart21.21.0PUSHtocorppark(2)

車(chē)輛名稱空載速度(km/min)實(shí)載速度生成時(shí),放入公司停車(chē)場(chǎng)的車(chē)位

?垃圾箱具體設(shè)計(jì)

設(shè)計(jì)垃圾放入垃圾箱時(shí)的活動(dòng),也即每個(gè)垃圾箱的“actionsoninput"中的程序。

bufferal.actionsoninput:

IFMOD(NPARTS(bufferal),cartcapacity(1))=1

CALLdumpcarl1,get1,road7_t,I

VSEARCHroadO_l,corppark,roadl_2,roadl_0,road2_3,road3_4,road4_5,road5_6,

road6_5,road6_7,road7_t,roadl_7,roadI_0,road3_6,road6_3,roa(17_0,

road0_7,road2_l,geta1,geta2,geta3,geta4,geta5,geta6,geta7,getb1,

getb2,getb3,getb4,getb5,getb6,getb7

ENDIF

moddemanda(1)=MOD(NPARTS(buffera1),cartcapacity(I))

程序解釋?zhuān)?/p>

第一行:判斷當(dāng)bufferal中的垃圾的數(shù)量同車(chē)輛I的載重量取余為1時(shí),發(fā)生if-

endif之間的活動(dòng);

第二行:叫車(chē)dumpcart1,該車(chē)將在途徑getl上裝載垃圾,在途徑road7_t上卸載垃

圾,優(yōu)先級(jí)為1;

第三行至第五行:在所有途徑上搜索車(chē)輛dumpcartl;

第七行:匯總非整車(chē)?yán)臄?shù)量,帶到buffera2中繼續(xù)計(jì)算并叫車(chē)。

Buffera2^buffera7actionsoninput:

IFMOD(moddemanda(i-1)+NPARTS(buffcra(i)),cartcapacity1)=1

CALLdumpcartI,geta(i),road7_t,0

VSEARCHroadO_l,corppark,roadl_2,roadl_0,road2_3,road3_4,road4_5,road5_6,

road6_5,road6_7.road7_t,roadl_7,roadI_0,road3_6,road6_3,roa(17_0,

road0_7,road2_l,geta1,geta2,geta3,geta4,geta5,geta6,geta7,getb1,

getb2,getb3,getb4,ge(b5,getb6,getb7

ENDIF

moddemanda(i)=MOD(moddemanda(1-1)+NPARTS(buffera(i)),car(capacityI)

i表達(dá)本垃圾箱的序號(hào),為2,3,4,5,6,7;

?第?行:將其上?個(gè)垃圾箱的非整車(chē)?yán)鴶?shù)量同本垃圾箱中的垃圾數(shù)相加,然后與車(chē)輛

一的載重量取余,當(dāng)結(jié)果為1時(shí),叫車(chē)。

?垃圾箱bufferbl'bufferb7的“actionsoninput”同垃圾箱buffera「buffera7

的“actionsoninput”解決邏輯完全同樣,只需要將buffera改為bufferb、dumpcart1

改為dumpcart2smocdemanda改為moddemandbsgeta改為getb即可。

?兩點(diǎn)間運(yùn)送途徑上的程序設(shè)計(jì)

下面以road2_3為例,加以說(shuō)明其邏輯流程。其它途徑類(lèi)似,可?以在途徑的generaldetail

中的outputto中加以查看。

IFVEHICLE(road2_3,l)=dumpcartl

IFNPARTS(buffera3)>0

PUSHtogeta3(l)

ELSE

PUSHtoroad3_4

ENDIF

ELSEIFVEHICLE(road2_3,1)=dumpcart2

IFNPARTS(bufferb3)>0

PUSHtogctb3

ELSE

PUSHtoroad3_4

ENDIF

ELSE

Wait

ENDIF

第一行到第六行:決定車(chē)輛dumpcart1到達(dá)途徑road2_3末端時(shí),它的運(yùn)營(yíng)途徑。假如此時(shí)

垃圾箱buffera3中有垃圾,則車(chē)輛dumpcart1駛向途徑geta3,進(jìn)行垃圾收集(第二行到

第四行);假如垃圾箱bi:ffera3中沒(méi)有垃圾,則車(chē)輛dumpcart1駛向途徑road34。

?第七行到第卜二行:決定車(chē)輛dumpcart2到達(dá)途徑road2_3末端時(shí),它的運(yùn)營(yíng)途徑。假

如此時(shí)垃圾箱bufferb3中有垃圾,則車(chē)輛dumpcart2駛向途徑getb3,進(jìn)行垃圾收集

(第八行到第十行);假如垃圾箱bufferb3中沒(méi)有垃圾,則車(chē)輛dumpcart2駛向途徑

road34。

?假如是其他情況,等待(第十三行到第十四行)。

?途徑get系列的設(shè)立

在Get系列(Getal"?eta7,Getb在getb7)途徑中沒(méi)立車(chē)輛的裝載(loading)程序和

條件,它們的設(shè)定以及程序的解決流程基本相同,下面舉geta2加以說(shuō)明。其中裝載數(shù)量

(loadnum)和裝載時(shí)間(loadtime)在generaldetail頁(yè)的actionsonfront中設(shè)定;裝

載程序和條件在loadingdetail頁(yè)中進(jìn)行設(shè)定。

Generaldetail頁(yè)的actionsonfront程序如下:

IFNFREE(dumpcart1)>=NPARTS(buffcra2)

loadnum=NPARTS(buffera2)

ELSE

loadnum=NFREE(dumpcan1)

ENDIF

loadlimea(1)=3+loadnum/1000*loadindexa/laborneeda

dayloadtimea=dayloadtimea+loadtiniea(1)

程序解釋?zhuān)?/p>

第,行至第五行:假如車(chē)輛dumpcartl的空余容量NFREE(dumpcart1)不小于垃圾箱buffera2

中的垃圾數(shù)量,則收集數(shù)量loadnum為垃圾箱buffers中的所有垃圾;否則,收集數(shù)量

loadnum為車(chē)輛的空余容量。

第六行:計(jì)算本次收集所需的時(shí)間loadtimea(l),它是本次垃圾收集量、隨車(chē)工作人員數(shù)

以及收集時(shí)間系數(shù)的函數(shù)。

途徑geta2中的loading具體設(shè)計(jì)圖

途徑geta2中的loadingdetai1頁(yè)框的設(shè)定如圖11.2所示。

?在選中l(wèi)oadingenabled(可以裝載)前的復(fù):選框后,將會(huì)出現(xiàn)該界面上的其他內(nèi)容。

TransferMode(裝載模式)有三種:if、cal1>alwayso我們選擇條件模式if,在條

件condition:框中輸入條件表達(dá)式MPARTS(buffera2)>0,即當(dāng)垃圾箱buffera2中的垃

圾數(shù)量大于零時(shí),可以裝載;裝載數(shù)量等于Quanlilylo框中的變量loadnum的值;裝

載的時(shí)間需要TimetoLoad框中的變量loadtimea⑴;裝載的源在InputLoadingRule

規(guī)則中進(jìn)行設(shè)定,為"PULLfrombuffera2n,從垃圾箱buffera2中收集。

?road7_t的設(shè)定

車(chē)輛每次到達(dá)途徑road7_t的末端時(shí),都要進(jìn)行卸載解決,所以對(duì)途徑road7_t的具體

設(shè)計(jì)項(xiàng)目涉及卸載所需的時(shí)間,卸載模式等。

通過(guò)途徑road7_t的Generaldetai1頁(yè)的actionsonfront中設(shè)定卸載所需的時(shí)間,程

序如下:

IFVEHICLE(road7_tj)=dumpcard

unloadtime=3+6*NPARTS(dumpcartl)/1000/labornceda

dayunloadlimea=dayunloadtimea+unloadtime

ELSE

unloadtime=2+6*NPARTS(dumpcarl2)/1000/laborneedb

dayunloadtimeb=dayunloadtimeb+unloadtime

ENDIF

程序解釋?zhuān)?/p>

第一行至第三行,根據(jù)函數(shù)VEHICLE。的結(jié)果,假如到達(dá)車(chē)輛是dumpcart1,就通過(guò)車(chē)輛

dumpcart1中所裝載的垃圾數(shù)量NPARTS(dumpcart1)>車(chē)輛dumpcart1的隨車(chē)工作人員數(shù)

laborneeda來(lái)擬定卸載時(shí)間unloadtime(第二行),然后記錄車(chē)輛dumpcartl的總的卸載時(shí)

間dayunloadtimeb(第三行)。

第四行至第七行,否則,也就是到達(dá)的車(chē)輛是dumpcart2,就通過(guò)車(chē)輛dimipcart2中所裝載

的垃圾數(shù)量NPARTS(dumpcart2)s車(chē)輛dumpcart2的隨車(chē)工作人員數(shù)laborneedb來(lái)擬定卸

載時(shí)間unloadtime(第五行),然后記錄車(chē)輛dumpcart2的總卸載時(shí)間dayunloadtimeb(第

六行)。

圖11.3是途徑r02(17」設(shè)立中的另一項(xiàng)內(nèi)容,就是車(chē)輛卸載的相關(guān)內(nèi)容。

在選中UnloadingEnabled(可以卸載)前的夏選框后,該頁(yè)面上的其他選項(xiàng)將可以

被用戶設(shè)立。卸載模式(TransferMode)也有三種模式if、call、always,我們選擇模式

always,只要車(chē)輛到達(dá)途徑road7_t的末端,就進(jìn)行卸載活動(dòng)。卸載數(shù)量Quantityto設(shè)

定為All,就是卸載車(chē)輛上的所有垃圾。卸載時(shí)間Timeio設(shè)定為變量unloadlime,決定本

次卸載所需要的時(shí)間。停車(chē)Park設(shè)定為公司停車(chē)場(chǎng)corppark,決定在當(dāng)天回收任務(wù)完畢后,

車(chē)輛泊放的位置。卸載到什么地方,將由“outputunloadingrule”中的程序決定,程序

為:pushtoship,將所有垃圾送出系統(tǒng)。

途徑卸載Unloading頁(yè)框界面

11.5.5數(shù)據(jù)解決子模塊

天天車(chē)輛完畢收集工作完畢后,駛向垃圾解決公司停車(chē)場(chǎng)停泊時(shí),都將進(jìn)行一曲數(shù)據(jù)記錄

和解決活動(dòng)。這些程序?qū)懺谕緩絩oad7_0的“ActionsonFront"中,程序及其說(shuō)明如下:

IFVEHICLE(road7_0,l)=dumpcart1

IFNDemands(durnpcartl)=0

iuiilimca(1)-TIME

runtimea(2)=runtimea(2)+1

runtimea(3)=runtimea(1)-1000*(runtimea(2)-1)

timecosta=tiinecosta+timeweigh*(runtimea(3)-240)

daydistance=DISTANCE(durnpcartl)/IO-lastdaydistance

lastdaydistancc=DISTANCE(dumpcart1)/1()

dayunloadtimea=0

dayloadtimeb=0

ENDIF

ELSEIFVEHICLE(road7_0J)=dumpcart2

IFNDemands(dumpcart2)=0

runtimeb(1)=TIME

runtimeb(2)=runtimeb(2)+I

runtimeb⑶=runtimeb(1)-1000*(runtimeb(2)-1)

timecostb=timecoslb+timeweigh*(runtimeb⑶-240)

daydistancea=DISTANCE(dumpcart2)/10-lastdaydistancea

lastdaydistancea=DISTANCE(dumpcart2)/10

dayunloadtimeb=0

dayloadtimeb=0

ENDIF

ENDIF

FORnum=1TO4

IFVEHICLE(road7_0J)=dumpcart1

roadchoicea(num)=0

ELSEIFVEHICLE(road7_0,l)=dumpcart2

roadchoiceb(num)=0

ENDIF

NEXT

程序解釋?zhuān)?/p>

第一行至第十一行,假如即將停泊的車(chē)輛是dumpcartl,同時(shí)系統(tǒng)此時(shí)對(duì)車(chē)輛

dumpcartl的需求是零(第一:行);先記錄車(chē)輛dumpcartl在當(dāng)天收集工作的完畢時(shí)間,并判

斷是否超過(guò)了12點(diǎn),然后計(jì)算當(dāng)天的時(shí)間處罰成本timecost(第三至第六行);記錄車(chē)輛的運(yùn)

營(yíng)距離(第七至第八行);對(duì)兩個(gè)變量置零(第九至第十行)。

第十二行至第二十二行,記錄假如即將停泊的車(chē)輛是

dumpcart2的一些數(shù)據(jù),解釋同dumpcart1同樣。

第二十四行至第三十行,對(duì)途徑選擇變量數(shù)組置零。

11.5.6目的函數(shù)objfunO中的程序

sumcost=0!記錄總費(fèi)用的變量置零

sumcost=initialcosta+initialcostb+suincost

!將車(chē)輛的購(gòu)置成本加到總費(fèi)用變量中

sumcost=(labornccdb+labornccda)*60*(runtimca(2)+1)+sumcost

!將工作人員工資添加到總費(fèi)用變量

sumcost=DISTANCE(dumpcartOOl)/10*pcrmilccosta+DISTANCE(dumpcart(X)2)/10*

permilecostb+sumcost

!將車(chē)輛的運(yùn)營(yíng)費(fèi)用添加到總費(fèi)用變量

sumcost=(imecosla+timecostb+sumcost

!將時(shí)間處罰成本添加到總費(fèi)用變量

RETURNsumcost!返回變量sumcost給目的函數(shù)

11.6仿真運(yùn)營(yíng)與結(jié)果分析

我們現(xiàn)在采用如表11.8所示的兩種配置,來(lái)運(yùn)營(yíng)該仿真模型,仿真時(shí)間為一年(即

365*1440分鐘)。

表1L8兩種配置方案的異樣數(shù)據(jù)表

目車(chē)輛名稱載重量隨車(chē)人時(shí)間處

方(噸)員(人)罰因子

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論