我如何让海龟在 netlogo 中从世界边界反弹
How do I make turtles bounce off the world boundary in netlogo
我在 Netlogo 中有一个盒子限制的世界,我的海龟按照我想要的方式移动,但有些会卡在墙上,这会吸引其他人进入(我使用 Flocking 模型作为 backbone ) 直到所有的海龟都被困在墙上并停止移动。我尝试在 Go 中包含一个 wall_jump,但是一旦有太多的 flockmates 靠在墙上,它就无济于事,所以我放了另一个块来要求 flockmates 从墙上反弹,但它似乎没有有什么影响。如果你想重现整个问题,打开植绒模型并关闭世界边界。
其他人是如何解决这个问题的?
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
这个问题在 Random Balls 模型中解决了(在 NetLogo 模型库中):
http://ccl.northwestern.edu/netlogo/models/RandomBalls
虽然与您的问题没有直接关系,但您可能会发现查看产生墙集群(在懦夫模式下)的英雄与懦夫模型也很有趣:
http://ccl.northwestern.edu/netlogo/models/HeroesandCowards
我在 Netlogo 中有一个盒子限制的世界,我的海龟按照我想要的方式移动,但有些会卡在墙上,这会吸引其他人进入(我使用 Flocking 模型作为 backbone ) 直到所有的海龟都被困在墙上并停止移动。我尝试在 Go 中包含一个 wall_jump,但是一旦有太多的 flockmates 靠在墙上,它就无济于事,所以我放了另一个块来要求 flockmates 从墙上反弹,但它似乎没有有什么影响。如果你想重现整个问题,打开植绒模型并关闭世界边界。
其他人是如何解决这个问题的?
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
这个问题在 Random Balls 模型中解决了(在 NetLogo 模型库中): http://ccl.northwestern.edu/netlogo/models/RandomBalls
虽然与您的问题没有直接关系,但您可能会发现查看产生墙集群(在懦夫模式下)的英雄与懦夫模型也很有趣: http://ccl.northwestern.edu/netlogo/models/HeroesandCowards