|
|

楼主 |
发表于 2009-2-9 08:04:40
|
显示全部楼层
题目描述如下,这是一个油轮码头系统,油轮以指数分布到达港口(Harbour),排队(先进先出),等待一个拖轮(Tug)将其拖到一个空闲泊位(Berth),这称为“靠泊”,如果有多个泊位空闲,则随机选一个。拖轮将油轮拖到泊位后,即释放油轮,可以接受下一个任务。而油轮则开始装油,装完油后,即发出“离泊”请求,等待拖轮将其拖到港口(harbour),这称为“离泊”,释放后离开。总共有三个泊位。
$ F @. m6 \- X4 m! X拖轮的调度规则很重要,描述如下:) n, {+ R" N- l- C; Y7 U' g
如果拖轮在港口处,则“靠泊”请求优先于“离泊”请求;
- T1 S5 F- L( i3 x9 ]如果拖轮在泊位处,则“离泊”请求优先于“靠泊”请求;+ }: ^: e& F) S5 W1 t0 i/ a
( A! i( f& k& V9 G" Z9 k& B油轮到达时间间隔、从港口到泊位的行驶时间、以及在泊位的装货时间大家自己随便设置。
6 W" `, h; w) ^( r详情参考: http://www.simulway.com/bbs/thread-13291-1-1.html
U$ w+ z+ l# ]% V! D
9 W1 @& A: R0 y, l7 s' F: J' `& t: n还有个Flexsim的,顺便进行比较.8 ^! C; e8 |! ~9 W5 [, H6 r Y
IESIM:
2 ]& K+ y3 h8 V% Z! b用ExtendSim 做了一个模型,为了一目了然,我没有对模型进行分层,所有模块都在一个层面上,所以,没有考虑美观的问题,只是做了一些标注。为了讨论方便。
: f* X& j, d1 w. _6 u, k6 K1 ?7 d' {
V$ e6 A+ J/ C" b9 S5 _5 n这个模型采用了集中调度、分散仿真的思路,就是所有的调度逻辑都放在一个集中的模块中,这样方便以后扩展到更复杂的逻辑上,也容易维护。
7 Z& Q3 j# Z, T! i6 [/ ^) U: b) d% \2 G: u+ [9 j
这里面逻辑也包含了拖船在泊位之间移动的时间。
k9 O5 T: M; f- j& X$ W4 B' I. F4 w/ Q+ S% D2 N, I% V/ h/ N" F
这个模型只是可以用extendsim 实现的方法之一。其实这里面的 Batch / Unbatch 模块都可以省略,这样模块数量会更少。但那样的话,需要的抽象思维更多一些。我先发这个模型,如果对其他实现方法感兴趣,我可以再做出来。5 G, _: k4 ~ z7 m' W
4 i; \6 A& `$ G% h: l6 @7 w
[ 本帖最后由 focuscon 于 2009-2-9 15:09 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|