首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >netlogo如何为乌龟设置最小间隔跟随首领

netlogo如何为乌龟设置最小间隔跟随首领
EN

Stack Overflow用户
提问于 2014-10-09 17:37:02
回答 1查看 712关注 0票数 0

当紧急情况发生时,我试图让一名特工(白人)跟随领导(黑人)。问题是,当紧急情况发生时,智能体会跟随领导者,然而他们彼此重叠。如何确保它们在跟随领导者时不会相互重叠。我确实尝试过在work.Really中使用分离规则,它不需要知道如何解决这个问题。谢谢你的帮助

代码语言:javascript
复制
turtles-own 
[
leader? 
leader
]


to setup
clear-all
reset-ticks

ask n-of population patches with [ pcolor = blue]
[sprout 1
[ set color white
set size 1
set shape "person"
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 1
set shape "person"
set leader self
]
end

to go
ask turtles [follow-leader] 
tick
end

to follow-leader
if not leader? [ 
let nearby-leaders turtles with [leader? and distance myself < 3] 
if any? nearby-leaders 
[ set heading (towards min-one-of nearby-leaders [distance myself]) - random minimum-separation +           random minimum-separation
]]   
end   
EN

回答 1

Stack Overflow用户

发布于 2014-10-11 22:17:32

正确的格式:

代码语言:javascript
复制
while other turtles here [fd 1]

是:

代码语言:javascript
复制
while any? other turtles-here [fd 1]

确切地说,这不是最小间隔规则。这确保了海龟将继续移动,直到它不再与任何其他海龟共享一块土地。但是,如果这两只海龟靠近斑块边界,但在相反的两侧,那么这只海龟可能仍然随意地靠近另一只海龟。尽管如此,对于您的目的来说,它可能已经足够好了。

海龟以均匀的距离跟随领导者的一个示例模型是追随者(或多或少?不确定如何统一),在样本模型的艺术部分,在NetLogo的模型库中。您可能会查看该模型,看看您是否认为该方法适用于您的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26275090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档