在我的模型中,我生产了很多海龟,这会减慢它的速度。我可以通过杀死它们并拥有一个全球计数器来解决这个问题:
ask turtles [
if energy < 0 [
set turtle-count turtle-count + 1
die
]]
但我希望能够提取这些代理商的'who','xcor'和'ycor'。我怎样才能做到这一点?
由于
答案 0 :(得分:3)
您可以将这些值保存在外部文件中。我想这可以帮助你设置一下,不知道你是否可以复制粘贴。
使用以下方式设置模拟:
to setup
....
set-current-directory user-directory ;;choose directory of file
file-open "database.txt" ;;choose any name for your file
ask turtles
[
if energy < 0
[
write-to-file ;;go to the writing section
set turtle-count turtle-count + 1
die
]
]
....
end
to write-to-file
file-write who
file-write xcor
file-write ycor
file-print "" ;;new line for next turtle
end
用
结束你的模拟file-close-all ;;save the file
如果你打开txt文件它可能看起来像一团糟,但导入它,例如,在excel中用空格分隔,你将能够很好地阅读所有内容
EDIT1
您还可以执行以下操作,这可能会加快您的模拟速度(而不是要求每只乌龟都使用if-function)
ask turtles with [energy < 0]
[
write-to-file ;;go to the writing section
set turtle-count turtle-count + 1
die
]
也许有经验的人可以评论是否是这种情况?