我想做的是:
伪码
to flock
check flockmates
if find any leader inside the flockmates
change myheading to leader's heading
else
follow flocking rule [separate, allign, cohesion]
end下面是我使用的代码。
turtles-own
[ flockmates
nearest-neighbor
leader?
leader
]
to setup
__clear-all-and-reset-ticks
ask n-of population patches with [ pcolor = blue]
[sprout 1
[set color white
set size 0.6
set leader? false]
]
choose-leaders
end
to choose-leaders
ask n-of ((percent_of_leader / 100) * population ) turtles
[set leader? true
set color black
set size 0.6
set leader self
]
end
to go
ask turtles [flock]
end
to flock
find-flockmates
let nearby-leaders turtles with [leader? ]
ifelse any? nearby-leaders
[ set heading [heading] of nearby-leaders]
[ find-nearest-neighbor
ifelse distance nearest-neighbor < minimum-separation
[separate]
[ if any? flockmates
[align
cohere ]]]
end
to find-flockmates ;; turtle procedure
set flockmates other turtles in-cone vision vision-angle
end
to find-nearest-neighbor ;; turtle procedure
set nearest-neighbor min-one-of flockmates [distance myself]
end然而,当我运行代码时,这个错误消息弹出的不能将海龟变量的标题设置为非数字147.,它指向这个代码[设置附近领导者的标题]。我在这里做错了什么?真的很感激有人能帮忙。
发布于 2014-10-16 21:23:13
因为代码中的附近领导者是海龟集,所以您应该使用one-of。
set heading [heading] of one-of nearby-leadershttps://stackoverflow.com/questions/26413363
复制相似问题