NetLogo - направленное движение черепах в пределах определенной области - PullRequest
0 голосов
/ 29 мая 2018

Я хочу, чтобы черепахи делали направленные движения в NetLogo.Допустим, у нас есть определенная область как синие пятна , где черепахи могут выжить только в этой области.Они не могут сбежать из этой области.И для каждой черепахи она хочет двигаться к более низкой локальной плотности с определенной скоростью (минимальное количество черепах в пределах области с определенным радиусом).

Я генерирую переменную для заплат как локальная плотность.и используйте

let ideal-destination min-one-of blue-patches [ count turtles in-radius 5 ]
face ideal-destination

, чтобы получить направление движения.Но проблема в том, что с определенной скоростью они могут вырваться из ограниченной зоны.Как я могу позволить им остановиться на краю ограниченного пространства?

1 Ответ

0 голосов
/ 30 мая 2018

Для перемещения черепах в зоне ограничений с определенной скоростью мы можем использовать patch-forward для проверки:

ifelse patch-ahead speed != nobody
  [ifelse [pcolor] of patch-ahead high-speed = white ;;the color of outside of the area
    [ fd 0 ]
    [ fd speed ] ]
  [ fd 0 ]
...