NetLogo 帮助使用函数 "let"

NetLogo help using function "let"

我们正在使用类似于狼-羊模型的函数"let" 对两个代理之间的交互进行建模。当agent1和agent2处于同一个space时,agent2(猎物)需要从agent1(捕食者)那里得到与变量a同值的变量a

类似于:

ask agents [
  let prey one-of agents-here [
    ask prey set a "the variable a from agent"
    ]
  ] 

我想你想要的(未测试)是这样的:

ask agents
[ let prey one-of agents-here
  ask prey
  [ set varname [varname] of myself
  ]
] 

看来你的问题并不是关于 let,它只是在说 'make the variable value the result of some statement'。由于未编码位是关于如何获取 'variable a of agent' 的值,那么我认为您的问题是关于 myself.

[] of 表示 'get the value of a variable belonging to some agent' 并且 myself 有点跳出括号级别以查找变量所属的代理。

附带说明一下,将 'agents' 作为您的 turtles breed 可能不是一个好主意,因为很难谈论您的模型 - [= 这个词29=] 将指的是您的一种代理类型,也是代理的一般 class。