Random 如何随机选择netlogo中具有较高高程的相邻修补程序

Random 如何随机选择netlogo中具有较高高程的相邻修补程序,random,patch,netlogo,elevation,Random,Patch,Netlogo,Elevation,如何在所有相邻面片中随机选择较高的面片,而不是最高的相邻面片? 我正在考虑删除(如果标高>=[elevation]的max one邻居[elevation][stop]) 并在[移动到邻居之一[停止]中放置“[停止]” to move ; a turtle procedure if elevation >= [elevation] of max-one-of neighbors [elevation] [stop] ifelse random-float 1 < q [uphi

如何在所有相邻面片中随机选择较高的面片,而不是最高的相邻面片? 我正在考虑删除(如果标高>=[elevation]的max one邻居[elevation][stop]) 并在[移动到邻居之一[停止]中放置“[停止]”

to move ; a turtle procedure

if elevation >= [elevation] of max-one-of neighbors [elevation] [stop]


ifelse random-float 1 < q
[uphill elevation]
[move-to one-of neighbors]

end
移动;海龟手术
如果标高>=[标高]相邻的最大值之一[标高][停止]
ifelse随机浮点1
其中一个
从代理集中随机选择一个代理,并使用创建满足条件的那些代理的代理集。您还需要测试是否至少有一个位置可以访问。选择如下所示(阈值条件待定):

;海龟语境中的蝴蝶移动过程
移动;海龟手术
如果标高>=[标高]相邻的最大值之一[标高][停止]
; 用概率q确定是否上坡
ifelse随机浮点1
首先,您要定义要测量的较高面片数量,您可以从所有8个面片中选择一个,然后随机选择一个,也可以选择最高的面片。另一方面,您可以考虑使用某种类型的treshold来定义何时选择一个补丁。什么是阈值保持条件?是海拔吗?可能是海拔>20。您的问题不清楚您是否希望从高于某个数字(或阈值)的组和邻居组中较高的组中进行选择。当海龟在他们当地的山顶上时,你想发生什么?
to move-up ; a turtle procedure
  let candidates neighbors with [elevation >= <thresholdhold condition> ]
  if any? candidates [ move-to one-of candidates]
end
to move-up
  move-to one-of max-n-of 3 neighbors [elevation]
end
; The butterfly move procedure in turtle context
to move ; a turtle procedure
  if elevation >= [elevation] of max-one-of neighbors [elevation] [stop]
  ; Decide whether to move uphill deterministically with probability q
  ifelse random-float 1 < q
   [ uphill elevation ] ; move uphill
   [ move-to one-of neighbors ] ; otherwise move randomly
   set patches-visited patches-visited + 1
end