一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,) w' X% a! a1 l) J0 h
从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
) w* e* i$ R7 W, d @ScheduledMethod(start = 2, interval = 1, priority = 2) 6 b* f Q4 u% V9 \$ v3 S
public void step()8 K4 R. L3 p* j( _- f
……
- ]) }* X7 {5 m4 z! u我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,
3 c8 c5 I, A8 _; I5 u) \7 `此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。& K5 @% a5 z* a" G9 Z2 h
6 w, F+ g! [- V% u: Y" M
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
" \/ u+ G2 l& q- ?相对复杂一些,目前我还没有具体应用到。 |