一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,2 u# \ X( u) j- Z- w) k
从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
F$ }/ B6 X5 C @ScheduledMethod(start = 2, interval = 1, priority = 2) 2 G( b. J A( G t0 `6 M
public void step()
h5 ]) |4 S* E ……; }' Q$ S, O( J l# e9 \0 u7 }
我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,% z# t% \, ]; v9 [/ L0 i
此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。. i6 h$ j2 H% Y9 `# [+ F
. ]( K) `, z, a: o) G* d# f6 H
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数," W, K. M" a# F9 h$ i1 d1 `! ]
相对复杂一些,目前我还没有具体应用到。 |