一般来说可以在每个agent的类实现(在项目src目录下的.java或.groovy文件)中顺利定义其行为的仿真调度信息,
- A- y5 {+ B" z5 Y) o' i从官方demo的范例来看,一般是step函数,注意前面的Java annotation实现的仿真调度参数(Schedule)设置,例如如下源码
" {1 C4 c0 G9 k$ O @ScheduledMethod(start = 2, interval = 1, priority = 2)
}" ^$ n) {, [# Z public void step()4 M( r. n6 T% R1 A$ ]; y
……
0 @& a: t5 c8 d! C2 T! P$ c+ _: Z我理解的意思就是此类agent对象创建后经过2 ticks执行step函数定义的行为,; a% R4 H* W8 s+ B# S3 |
此后每经过1 tick,只要这个agent还在就重复执行step,优先级为2.,其它参数默认。) z, K2 O) J$ M2 _$ n
' u5 V+ k! J m" s: c7 R0 a
当然Repast simphony是支持agent行为的异步延时调度的,需要应用相应的api类函数,
2 j# ?; D! x$ [, l w- q" v相对复杂一些,目前我还没有具体应用到。 |