Как найти всех агентов, которые не включены в набор агентов?
У меня есть набор агентов с именем iant-component, и я установил цвет всех агентов на красный:
ask giant-component [
set color red
ask my-links [
set color red
]
]
Теперь мне нужно установить цвет всех остальных черепах на синий. Я знаю, что проще всего было бы сначала установить цвет всех черепах на синий, а затем покрасить весь гигантский компонент в красный, но во время симуляции это может сбить пользователя с толку, увидев его. Есть ли способ получить всех черепах, которые не находятся внутри гигантского компонента?
2 ответа
Ответ выше решает вашу проблему окраски. Более общий ответ, который может быть полезен для других посетителей этого вопроса:
let not-giant turtles with [not member? self giant-component]
Это создает агентский набор черепах, которые не входят в гигантский компонентный набор агентов.
Если это правда, что единственные черепахи с color = red - это те, что есть в вашем наборе агентов, вы можете установить цвет всех остальных черепах следующим образом:
ask turtles with [color != red] [set color blue]
редактировать
извините, я плохо прочитал первую строчку вопроса.
Я бы сделал это двумя способами:
1 - установите черепаху, принадлежащую всем черепахам, в значение true, если они принадлежат к набору агентов, а затем
ask turtles with [your-property = false][set color blue]
2- определить два вида породы: один для черепах в вашем наборе агентов (скажем, для разведения), другой для черепах за пределами вашего набора агентов (скажем, для разведения). Теперь вы можете просто сказать:
ask breed-out [set color blue]