Netlogo 让海龟评估不同品种海龟的颜色

Netlogo 让海龟评估不同品种海龟的颜色,netlogo,agent-based-modeling,Netlogo,Agent Based Modeling,我正在建立一个捕食模型的相互作用 我有一个猎物,它会根据当前的状态改变颜色。我工作的状态是“隐藏”,猎物是黄色的。我有一个捕食者在评估它是否能追逐猎物,我试图通过评估猎物的颜色来实现这一点,但它似乎不起作用 to chase let target min-one-of prey [distance myself] output-print target ifelse target != yellow [ output-print "chase" ] [

我正在建立一个捕食模型的相互作用

我有一个猎物,它会根据当前的状态改变颜色。我工作的状态是“隐藏”,猎物是黄色的。我有一个捕食者在评估它是否能追逐猎物,我试图通过评估猎物的颜色来实现这一点,但它似乎不起作用

to chase
  let target min-one-of prey [distance myself]
  output-print target
  ifelse target != yellow 
  [

     output-print "chase"
  ]
  [
    output-print "ignore"
  ]
end
当我运行模型时,捕食者会不断打印“追逐”字样——不管猎物是否“隐藏”

这里是隐藏函数

to hiding
  set color yellow
  set energy (energy - 1)
  if (count predators = 0)
[
  output-print "safe"
]
end
任何帮助都将不胜感激

要访问颜色(或代理的任何其他变量),请将变量名括在括号中,然后使用“of”

在代码的上下文中,它看起来是这样的

 to chase
 let target nearest-of prey
 output-print target
 ifelse [color] of target != yellow 
 [

  output-print "chase"
 ]
 [
 output-print "ignore"
 ]
结束

这需要一些时间来适应,因为它与“C”风格语言使用的object.variable形式有很大不同

 to chase
 let target nearest-of prey
 output-print target
 ifelse [color] of target != yellow 
 [

  output-print "chase"
 ]
 [
 output-print "ignore"
 ]