|
最近做些练习,有一个模型分享一下。7 t* a8 ]. I8 \ R% l
/ t8 v1 f4 q" L$ t2 q8 J, }! s
, y2 r3 @# O; T* ] 模型中有发生器,每隔一段时间会到达item, item根据不同类型不同颜色,分别分配到特定的sink;
+ y* r& ?5 q- V2 o6 H$ n- Z& C$ c y% e
操作员每次搬运3件item, 然后坐上车开往站点,卸下货物。 根据不同货物的优先级进行配送(见全局表GT,其中1表示item类型是1 ,2表示item类型是2....以此类推)。
2 E( c# F$ @( q$ x6 |) m% j* L' z- k
这个模型中有两个难点,我用了一些比较笨的方法,哪位前辈看懂了,还请指教!!
) \) N6 K8 |" S: S5 t+ @1 j第一个难点:
: \: e$ R3 p1 c, |6 ?3 m模型中,执行任务的并不是特定的一个op,而是一个team; 也就是说有多组人员和车辆,在进行配送任务时,事先并不知道哪个任务执行器时我调用的实体;因此我调用子任务序列,并在 任务开始后,change task , 使得子任务序列能够找到合适的对象。
+ [, c, z( V) B* Y( a# ]8 A# V% p1 s4 j
第二个难点, 子任务序列是一个协作任务序列,在进行多次配送时,实际上任务序列时代码循环了多次的结果, 而协作任务序列中每个代理任务返回的整型值不能相同,所以我使用了数组来命名; 不知道可否使用更简单的方式来代替?? |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|