我在Netlogo有一个盒装世界,我的海龟正按照我想要的方式移动,但是有些人被困在墙上,吸引了其他人(我使用植绒模型作为骨干),直到所有的乌龟都被困住面对墙壁,停止移动。我尝试在Go中加入一个wall_jump,但是一旦有太多的絮状物撞到墙上就没有用,所以我又放了一块让絮状物从墙上弹起来,但似乎没有任何效果。如果要重新创建整个问题,请打开植绒模型并关闭世界边界。
其他人如何解决这个问题?
to wall_jump
ifelse any? flockmates
[
if ycor >= max-pycor * 0.95 [set heading (random-normal 180 2)]
if xcor >= max-pxcor * 0.95 [set heading (random-normal 270 2)]
if xcor <= min-pxcor * 0.95 [set heading (random-normal 90 2)]
if ycor <= min-pycor * 0.95 [set heading (random-normal 0 2)]
]
[if ycor >= max-pycor * 0.95 [set heading (random-normal 180 2)]
if xcor >= max-pxcor * 0.95 [set heading (random-normal 270 2)]
if xcor <= min-pxcor * 0.95 [set heading (random-normal 90 2)]
if ycor <= min-pycor * 0.95 [set heading (random-normal 0 2)]
]
end
答案 0 :(得分:2)
此问题在Random Balls模型中解决(在NetLogo模型库中): http://ccl.northwestern.edu/netlogo/models/RandomBalls
虽然与你的问题没有直接关系,但看起来你可能会觉得有趣的是看看产生墙聚类的英雄和懦夫模型(在懦夫模式下): http://ccl.northwestern.edu/netlogo/models/HeroesandCowards