一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,7 S% g7 a6 p7 M" h( ]8 ?
从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
6 {1 |; t( F7 l# U1 U @ScheduledMethod(start = 2, interval = 1, priority = 2)
# ]5 c! n4 S! J* a public void step()/ l A; G0 m6 |2 Q( X x
……
1 W; ^. _# F- \5 w- a! h. L我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,2 w, l, s. O* f7 C- m" W" z# y8 P
此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。
7 v, y* G5 t6 U* _8 k* t3 [$ P2 C% ?
- ~# S4 U; {3 j当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
- k- B5 ]- o1 e( ~1 i) j; K相对复杂一些,目前我还没有具体应用到。 |