Netlogo:要求海龟按顺序孵化
我正试图创建一个以Netlogo:要求海龟按顺序孵化,netlogo,social-networking,social,Netlogo,Social Networking,Social,我正试图创建一个以num节点和集团规模为主要变量的集群(或村庄)社会网络结构。在我的代码中,我正在创建集群中作为初始节点的节点的num nodes/clique size。之后,我要求这些节点填充靠近它们的其他节点。但是,由于同时要求所有节点进行图案填充,因此节点总数将超过num nodes变量。因此,我需要节点以顺序方式填充。我怎样才能做到这一点?我的代码当前如下所示: to create-new-nodes [n] clear-all ask patches [ set pc
num节点
和集团规模
为主要变量的集群(或村庄)社会网络结构。在我的代码中,我正在创建集群中作为初始节点的节点的num nodes/clique size
。之后,我要求这些节点填充靠近它们的其他节点。但是,由于同时要求所有节点进行图案填充,因此节点总数将超过num nodes
变量。因此,我需要节点以顺序方式填充。我怎样才能做到这一点?我的代码当前如下所示:
to create-new-nodes [n]
clear-all
ask patches [ set pcolor white ]
create-nodes n [
set color red
set shape "circle"
]
reset-ticks
end
to setup
clear-all
ask patches [ set pcolor white ]
setup-clusters
reset-ticks
end
to setup-clusters
create-new-nodes (num-nodes / clique-size)
ask nodes [set leader 1]
ring-layout
ask nodes [set groupid groupid + who]
while [count nodes < num-nodes] [
ask turtles with [leader = 1] [ hatch 1 ]]
end
谢谢
向[leader=1][hatch 1]的海龟询问n个(num nodes-count nodes-1)
这可能是重复昨天的问题,不是真正的imo。请参见编辑@马苏德,我用那条线出错了。这也不是我真正想要的。谢谢你的帮助!这是您对问题的陈述:“节点总数将超过num nodes变量”。您建议的“按顺序填充”方法一次只测试一个节点,效率极低,因为必须为每个节点运行测试。看看昨天问题的答案。
;;ticker is a global variable
to setup-clusters
create-new-nodes (num-nodes / clique-size)
ask nodes [set leader 1]
ring-layout
ask nodes [set groupid groupid + who]
loop [
if count nodes >= num-nodes [stop]
ask n-of 1 nodes with [groupid = ticker] [ hatch 1 [set group-membership groupid ]]
ifelse ticker = (num-nodes / clique-size)
[set ticker 0]
[set ticker ticker + 1]
]