Netlogo:乌龟可以包括另一只乌龟吗?

时间:2015-02-23 22:28:04

标签: windows netlogo

Netlogo:乌龟可以包含另一只乌龟吗? 伪代码: 如果turtle1<来自turtle2的5个半径 在turtle2中包含turtle1; turtle1 die

2 个答案:

答案 0 :(得分:3)

也许不完全包括,但是海龟可能会在自己的变量中收集其他不幸代理的列表。请查看手册中的agentsets

实施例

声明乌龟变量

turtles-own [
  swallowed; agentset of the turtles I've eaten
]

创建代理时将此代理集设置为空

to setup
  create-turtles 1 [ 
    set swallowed no-turtles
  ]
end

让乌龟互相吃饭

to swallow
  if any? other turtles-here [
    set swallowed (turtle-set swallowed other turtles-here) 
  ]
end

要求海龟这样做:

to go
  ; ...

  ask turtles[ swallow ]

  ; ...
end

但是 - 不要让被吞噬的海龟死掉(正如你的伪代码所提出的那样),因为它们也会从代理组中消失。定义另一个代理变量(例如is-alive?)并在吞咽过程中将其设置为false。然后,您可以隐藏所有被吃掉的代理商。

答案 1 :(得分:-1)

再次感谢您的回答。 伪代码: Ifelse Turtle1死了;; Turtle1和Turtle2来自不同品种                     ;;这不是一个canibalism案例