Как сделать так, чтобы черепахи в Netlogo сравнивали переменные?

Как сделать так, чтобы две черепахи в NetLogo обменивались данными и сравнивали переменные?

Мне нужна серия черепах, чтобы сравнить их переменные SN со своими соседями, чтобы увидеть, у кого больше значение. Правильно, я не тестирую с агентом 0, разделяющим переменную SN со своими связанными соседями. Если утверждение верно, оно должно установить другую переменную (SocialST) в 1. Я не могу определить правильный синтаксис и не могу найти хороший пример для работы.

Должно быть что-то вроде этого ...

    to go
      ask HHAgent 0 [
      if [SN] of self > [SN] one-of link-neighbors [Set SocialST 1]
                    ]
    end

person UserBRy    schedule 21.06.2016    source источник


Ответы (1)


Вы просто забыли of?

turtles-own [SN SocialST]

to setup
  ca
  crt 25 [set SN one-of [1 2 3] setxy random-xcor random-ycor]
  ask turtles [create-links-with n-of 5 other turtles]
end

to go
  let _aset n-of 5 turtles
  ask _aset [
    if (SN > [SN] of one-of link-neighbors) [ ;note the `of`
      set SocialST 1
    ]
  ]
end

Или вы хотите сделать что-то еще? (Обратите внимание, что в этом коде выбранные черепахи сравниваются только с одним из их партнеров по ссылке, выбранных случайным образом.)

person Alan    schedule 21.06.2016
comment
Обратите внимание, что [SN] of self можно упростить до SN. - person Seth Tisue; 22.06.2016
comment
@SethTisue Да, но я хочу, чтобы OP сосредоточился на одном изменении в этой строке. Тем не менее ... да, так будет лучше. Я его отредактирую. - person Alan; 22.06.2016
comment
@ Алан Ага, я пропал в ту секунду. Спасибо за помощь. - person UserBRy; 22.06.2016