一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,
; ^/ L" M+ u) G- B7 e从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
) I8 p0 `# i! y" M/ q @ScheduledMethod(start = 2, interval = 1, priority = 2) 7 a/ x r, c2 ?2 ~, W2 ^7 ?; S: e
public void step()
9 e: S: N4 B* O# S" U+ L: ? ……
( I% z9 t# o. i$ O% |4 E+ R) V& q$ E我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,
" O& l: T; }" h" P$ x5 w1 {, T此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。4 e( { q( P5 |- l4 c- b
( c& ~" B! e6 r: {+ R* u4 k! W+ o
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
$ q% t i U/ _: j8 ?1 k% U相对复杂一些,目前我还没有具体应用到。 |