netlogo: как заставить черепах остановиться на определенное количество тиков, а затем продолжить
я пытаюсь создать модель, в которой черепахи ходят случайным образом (но с тенденцией к поступательному движению), пока они не приземлятся на пятно желтого цвета, которое представляет собой объект с наживкой.
Когда черепаха приземляется на одном из желтых пятен, яМне бы хотелось остановиться на этом патче и остаться там на 15 тиков, покаисследует приманка.
После того, как прошло 15 тиков, я хочу, чтобы черепахи продолжали двигаться как обычно, пока не встретят еще одно желтое пятно.
мы пытались изменить части этой модели припаркованных карт в модели Netlogo, но не смоглиэто действительно имеет смысл (ям новичок в нетлого)http://modelingcommons.org/browse/one_model/3205#model_tabs_browse_proceduresI»
Мы также пытались реализовать таймер обратного отсчета, как описано в этой темеКак создать таймер обратного отсчета в NetLogo?
Однако я получаю ошибку во время выполнения »Только наблюдатель может спросить множество всех черепах когда я пытаюсь запустить симуляцию. Может кто-нибудь сказать мне, где яя иду не так? Вероятно, в нескольких местах! Благодарю.
Вот'это код, которыйвызывает ошибку времени выполнения:
turtles-own [count-down]
to setup
clear-all
ask patches with [count neighbors != 8]
[set pcolor blue]
create-turtles 20
ask turtles
[setxy random-xcor random-ycor
pen-down]
ask n-of 20 patches
[ set pcolor yellow ]
reset-ticks
end
to go
move-turtles
tick
if ticks >= 720 [stop]
end
to move-turtles
ask turtles
[ ifelse pcolor != yellow
[continue]
[stay]
]
end
to continue
ask turtles
[rt -90 + random 181]
ask turtles
[ifelse [pcolor] of patch-ahead 1 = blue [ lt random-float 360 ]
[fd 1]
]
end
to stay
ask turtles
[
setup-timer
decrement-timer
if timer-expired? [continue]
]
end
to setup-timer
set count-down 15
end
to decrement-timer
set count-down count-down - 1
end
to-report timer-expired?
report ( count-down