2015-10-20 141 views
2

我想设置一个补丁变量的值,使其与其中一个邻居相同。什么了,我想是沿着线的东西:为了设置每个补丁的策略是相同的邻居的策略具有最高回报在netlogo中设置一个变量的值

ask patches[ 

    let trader max-one-of neighbors [payoff] 
    set strategy [strategy of trader] 

] 

。上述不起作用。任何人都可以请告诉我如何做到这一点?谢谢。

回答

1

您的代码一些修改:

1 - 你不能以同样的方式命名龟自己和板块自己,所以我离开 strategy龟,自己和pstrategy补丁,自己

2- neighbors返回一个包含8个周边补丁的agentset,而不是对他们的海龟,因此,为了获得对周围的补丁海龟,你应该使用的max-one-of turtles-on neighbors [payoff]代替max-one-of neighbors [payoff]

下面是我会做:

ask patches[ 
    ask max-one-of turtles-on neighbors [payoff] [ 
    set pstrategy strategy 
    ] 
+0

我不知道为什么你认为任何龟参与...?我不认为这是问题所暗示的。即使放在一边,这个代码仍然是不正确的。龟将设置它所在的补丁的“pstrategy”变量,而不是调用补丁。 –

2

你非常接近。您只是没有of的正确语法。 dictionary entry显示方括号的正确位置。

所以,这应该工作:

ask patches [ 
    let trader max-one-of neighbors [payoff] 
    set strategy [strategy] of trader 
] 
相关问题