Time 及时计算海龟数量

Time 及时计算海龟数量,time,netlogo,agent,ticker,Time,Netlogo,Agent,Ticker,您好,我正在尝试编写一个代码,在这个代码中,每当一个新的滴答声经过时,我就可以知道海龟组成的差异。明确地说,我需要计算海龟的数量,比如说第一次不同颜色的海龟中的蓝色,或者勾选1,然后在下一次再次计数,或者勾选2,计算时间步长和需要将该值用于其他目的之间蓝色海龟的差异,那么我可以使用哪种原语 let current-population-count map [count turtles with [color = ?]] colors let new-population-cou

您好,我正在尝试编写一个代码,在这个代码中,每当一个新的滴答声经过时,我就可以知道海龟组成的差异。明确地说,我需要计算海龟的数量,比如说第一次不同颜色的海龟中的蓝色,或者勾选1,然后在下一次再次计数,或者勾选2,计算时间步长和需要将该值用于其他目的之间蓝色海龟的差异,那么我可以使用哪种原语

    let current-population-count map [count turtles with [color = ?]] colors 
    let new-population-count (map[?1 * (savage ?2)] current-population-count colors)
    set new-population-count map [num-turtles * ? / sum new-population-count] new-population-count

尝试使用此代码,但这不适用于我的目的。有什么建议吗?

如果您只需要前一个timestep,那么最简单的方法是将其存储在全局变量中。如果您需要保存所有时间段的完整历史记录,则需要使用列表。这是一个时间步代码,只有一种颜色(未测试)

globals [lastblue]

to go
  ...
  let thisblue count turtles with [color = blue]
  if ticks > 1 [do whatever you want with thisblue and lastblue]
  set lastblue thisblue
  tick
end