一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,
. n7 D, h% F7 p从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码, d0 {' J, g6 O% Q! H# _
@ScheduledMethod(start = 2, interval = 1, priority = 2)
* z% x2 @5 D/ M% D4 p( c7 D1 I public void step()1 e6 U; l O( Y: V# B" h* ~
……% k( Z0 J5 H8 K0 w/ I: n
我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,
2 n/ u$ R$ y1 a1 b' y此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。
! G5 m' G% l& y G2 q7 Y4 \1 Q2 \# }
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
$ H# B- W2 Z9 Q7 S! y+ E- X相对复杂一些,目前我还没有具体应用到。 |