一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,
# V1 d: S$ T- o# W% m7 v从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
; j0 t- x; _. J+ y1 O4 _ v @ScheduledMethod(start = 2, interval = 1, priority = 2)
4 |/ x% u9 V4 h* l! o+ [ D public void step()0 T4 S( u `8 Y% `: B8 v
……) F& B5 p& z: h( U8 m! K
我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,
4 b/ F- r# E, X6 E2 `6 R0 x/ B: O此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。- e( \* m$ x' K& g% J4 Q; i, ?7 y
8 F' r# s! r9 E9 u. d0 j7 ]2 E, N当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数," }# F1 m6 f# s9 j9 W' R
相对复杂一些,目前我还没有具体应用到。 |