我想在模型中运行“行为空间”扫描,并让每个代理报告其在结果中所拥有的相应值。
这是我用来要求每个代理报告值的代码。
to-report wrapup
ask artcollectors
[
type who
type " "
type num-artcollectors
type " "
type num-subjectmatters
type " "
type c-artcollection-size
type " "
type c-self-reference-bias
type " "
type c-artdisposal-rate
type " "
type c-random-bias
type " , "
print clist
]
end
当我这样做并向控制台报告时,Netlogo将进行第一次运行并将结果报告给控制台,然后Nelogo在第一次运行结束时停止并报告
"Reached end of reporter procedure without REPORT being called.
error while observer running END
called by procedure WRAPUP
called by procedure __EVALUATOR"
所以我发现我的包装过程运行的语法不正确。谁能建议我需要使用的魔术字?
答案 0 :(得分:1)
to-report
过程是一个报告程序,因此必须将一些值返回给调用方。您的wrapup
过程实际上是一个命令-代理执行某些操作然后停止。因此,应将声明用于命令过程,to wrapup
比to-report wrapup
好。
希望这会有所帮助, 查尔斯