一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,
( a/ m: q) v: _, P5 c6 f从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
1 K9 I1 b* t. V" i2 T' a @ScheduledMethod(start = 2, interval = 1, priority = 2) 9 g6 `1 o) }8 V7 a
public void step()
7 C9 M( [" o" ]; }( X8 L ……
$ I) a- t) b& b5 F, D. Z我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,
% X6 h# H# z" y9 o* _4 ^5 j此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。, Q& l+ h1 g8 O/ t, m3 E
" U2 J+ N# t/ q( r
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
1 f1 }) y$ u7 ~3 g相对复杂一些,目前我还没有具体应用到。 |