NetLogo 中移动代理的 ticks 和 death 问题
Problems with ticks and death of mobile agents in NetLogo
我有一个不知道如何解决的问题。我有将以下信息导出到 .csv 文件的代码:
- 乌龟的身份
- 乌龟所在的小块的 x 坐标
- 乌龟所在小块的 y 坐标
- 分时编号
但是,如果我有一行代码,蜜蜂在达到一定数量的资源时死亡(例如,当它达到 > = 2 资源时,乌龟死亡。为了简化我放在这里的代码达到 tick >=2 乌龟就死了)。问题是在 tick 2 乌龟死了,最后一个 tick(tick 2)的 pxcor 和 pycor 值没有导出。所以,就像检查海龟时一样,海龟死了,我们看不到最后更新的刻度信息。
有谁知道我怎样才能得到这些信息?
如果我一直无法正确表达自己。我可以重写我的问题或尝试重写简化代码。
提前致谢
to setup
clear-all
reset-ticks
resize-world 0 3 0 3
ask patches [ sprout 1 [ setup-turtles ] ]
let pcolors [ ]
set pcolors [ 1 10 ]
ask patches [ set pcolor item (random 2) pcolors ]
end
to setup-turtles
set size 0.5
pen-down
end
to go
move
output
tick
end
to move
ask turtles [
rt random 360
fd 1
if ticks >= 2 [ die ]
]
end
to output
file-open "test.csv"
foreach sort turtles
[
t ->
ask t
[
file-print ( word self " , " pxcor " , " pycor " , " ticks )
]
]
file-print "" ;; blank line
file-close
end
此问题的答案已包含在您之前收到的 中。
你必须以一种要求海龟在 die
.
之前执行 output
的方式安排命令
例如
if ticks >= 2 [output die]
或
to go
move
tick
end
to move
ask turtles [
rt random 360
fd 1
output
it ticks >= 2 [die]
]
end
或者你要求你的海龟在你杀死它们之前做一些事情的任何其他安排,因为它们一旦死了就不能做任何事情。
我有一个不知道如何解决的问题。我有将以下信息导出到 .csv 文件的代码:
- 乌龟的身份
- 乌龟所在的小块的 x 坐标
- 乌龟所在小块的 y 坐标
- 分时编号
但是,如果我有一行代码,蜜蜂在达到一定数量的资源时死亡(例如,当它达到 > = 2 资源时,乌龟死亡。为了简化我放在这里的代码达到 tick >=2 乌龟就死了)。问题是在 tick 2 乌龟死了,最后一个 tick(tick 2)的 pxcor 和 pycor 值没有导出。所以,就像检查海龟时一样,海龟死了,我们看不到最后更新的刻度信息。
有谁知道我怎样才能得到这些信息?
如果我一直无法正确表达自己。我可以重写我的问题或尝试重写简化代码。
提前致谢
to setup
clear-all
reset-ticks
resize-world 0 3 0 3
ask patches [ sprout 1 [ setup-turtles ] ]
let pcolors [ ]
set pcolors [ 1 10 ]
ask patches [ set pcolor item (random 2) pcolors ]
end
to setup-turtles
set size 0.5
pen-down
end
to go
move
output
tick
end
to move
ask turtles [
rt random 360
fd 1
if ticks >= 2 [ die ]
]
end
to output
file-open "test.csv"
foreach sort turtles
[
t ->
ask t
[
file-print ( word self " , " pxcor " , " pycor " , " ticks )
]
]
file-print "" ;; blank line
file-close
end
此问题的答案已包含在您之前收到的
你必须以一种要求海龟在 die
.
output
的方式安排命令
例如
if ticks >= 2 [output die]
或
to go
move
tick
end
to move
ask turtles [
rt random 360
fd 1
output
it ticks >= 2 [die]
]
end
或者你要求你的海龟在你杀死它们之前做一些事情的任何其他安排,因为它们一旦死了就不能做任何事情。