一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,
# h( {! ~0 J- o, E, ]0 ?/ S: \, E从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
5 Y5 N$ o* o& l& B0 a6 H# y7 _! R @ScheduledMethod(start = 2, interval = 1, priority = 2)
3 F: }, u7 I# {0 ~* c2 ] public void step()6 Q6 [. \( b. z, J
……
" C, T7 _) u0 ^. C2 Y我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,4 L# b/ n( S5 }8 G' C% X* }# @
此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。& h4 m) a& K1 L- D' K: q6 K
; y$ J- j: p7 @/ l; H3 q
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
; K' [! w+ a) \. r& A+ p4 @相对复杂一些,目前我还没有具体应用到。 |