如何在Netlogo中删除从一只海龟到代理集的所有链接

如何在Netlogo中删除从一只海龟到代理集的所有链接,netlogo,Netlogo,我有一个问题: 我有一只乌龟在和一组特工打交道,他们都和那只乌龟有联系。 最后,我希望海龟删除它与agentset中代理的所有链接,但我找不到方法。 有人能帮我吗?我在这里报告不起作用的代码。特别是有问题的一句话是“询问我的链接[另一端=叛徒][死亡]” 注意:friends是一个代理集,它将所有具有执行命令的海龟链接的海龟分组 鉴于你是要求叛徒做点什么,我假设叛徒是一个愤怒的人另一端是代理,因此另一端=叛徒将代理与代理集进行比较。两者永远不可能相等。你想知道的是另一端的特工是否是叛徒angen

我有一个问题: 我有一只乌龟在和一组特工打交道,他们都和那只乌龟有联系。 最后,我希望海龟删除它与agentset中代理的所有链接,但我找不到方法。 有人能帮我吗?我在这里报告不起作用的代码。特别是有问题的一句话是“询问我的链接[另一端=叛徒][死亡]”


注意:friends是一个代理集,它将所有具有执行命令的海龟链接的海龟分组

鉴于你是
要求
叛徒
做点什么,我假设叛徒是一个愤怒的人<但是,code>另一端是代理,因此
另一端=叛徒
将代理与代理集进行比较。两者永远不可能相等。你想知道的是另一端的特工是否是叛徒angentset的成员。为此,您可以使用
成员?

ask my-links with [member? other-end traitors] [die]

嗯。。Netlogo不接受该行。上面说在会员之后?需要一个命令

与此同时,我就这样解决了。有点扭曲,但似乎有效:

let anger random-float 1
  repeat count traitors [
    let traitor one-of traitors
    if link-with traitor != nobody and tolerance < anger [
      ask link-with traitor [die]
    ]
  ]
让愤怒随机浮动1
重复计数叛徒[
让叛徒成为叛徒之一
如果与叛徒有联系!=没有人,宽容<愤怒[
询问与叛徒的联系[死亡]
]
]

修改Charles方法以适应公差变量的方法是:

ask my-links with [member? other-end traitors]
[ if tolerance < random-float 1 [die]
]
询问我与[member?other end叛徒]的链接
[如果公差<随机浮动1[模具]
]

代码缺少带有的
。看到新的答案带来宽容/愤怒谢谢你抓住那个JenB。如果叛徒是一个品种,那么成员?另一端叛徒
可以替换为
是叛徒吗?另一端
ask my-links with [member? other-end traitors]
[ if tolerance < random-float 1 [die]
]