Как сделать так, чтобы патчи принадлежали черепахе? - PullRequest
0 голосов
/ 10 января 2020

Я новичок в Netlo go и кодирую мир с кеширующими животными. Они будут go к своим кэшам (я установил их как синие пятна), если их значение энергии упадет ниже 10. Они могут найти эти кеши на основе произвольного значения «памяти», которое им дано, которое используется как значение в радиусе. Таким образом, они будут обращены и go к кешу в своей памяти в радиусе, если они собираются к d ie. Я начинаю внедрять систему домашних баз, где черепаха остается на меньшей площади со своими тайниками. Кто-нибудь знает, как я могу сделать патч принадлежащий отдельной черепахе? Это позволило бы черепахам иметь свои специфические c тайники на своей территории. Я изучил использование связей и пород, но связи существуют только между черепахами, и создание отдельных пород для 50+ черепах за раз кажется неэффективным и сложным. Я прошу прощения, у меня нет кода, пытающегося сделать кеш (патч) принадлежащим черепахе, я не знаю с чего начать. Есть идеи?

1 Ответ

1 голос
/ 10 января 2020

Если вы хотите, чтобы черепаха помнила что-либо (исправления или доход или что-то еще), тогда вам нужно присвоить переменную в операторе turtles-own и затем set значение соответствующим образом. Вот несколько примеров фрагментов кода. Они не будут работать, и ваш реальный код, скорее всего, будет выглядеть по-другому, потому что вам потребуется некоторая разработка условий, при которых будет назначен кэш, но они покажут вам, как выглядит переменное решение.

turtles-own
[ my-caches
]

set my-caches (patch-set my-caches patch-here)  ; code when a turtle finds a new cache site

Если вы хотите, чтобы патч, принадлежащий черепахе, сделал этот патч недоступным для других черепах, то также установите переменную патча для хранения его владельца.

patches-own
[ my-owner
]

ask turtles
  [ if [my-owner] of patch-here = nobody [set my-caches (patch-set my-caches patch-here)]
    ask patch-here [set my-owner myself]
  ]

Я предлагаю вам сделать несколько NetLo go учебники, затем посмотрите на некоторые библиотечные модели (и поймите их), прежде чем начинать свою собственную модель. Вам нужно понять основные понятия c, такие как черепахи / патчи, переменные, тики, прежде чем пытаться построить модель.

...