我正在尝试为家庭建模。我想设置它,以便男性遇到女性并形成一个链接,随后允许它们重现。我无法弄清楚或在网上找到如何编码链接来做到这一点,虽然我认为这是非常基本的。
我养育了男性和女性以及丈夫和妻子。此代码由男性运行。
to marry
if hunger < 10 [create-link-with one-of females]
ask my-links [set breed wives]
end
这将返回运行时错误“您无法看到品种到非链接代理程序集”。我认为这意味着我需要使用某种品种命令,例如
create-<breed>-link-with
但是
create-<wives>-link-with
和
create-<a wife>-link-with
等都会生成错误消息。
我也尝试过定向链接,例如
create-link-to one-of females
但无济于事。
答案 0 :(得分:1)
你让海龟问链接而不是link-neighbors
,我认为这就是全部:
breed [ cats cat ]
to setup
ca
crt 10 [ setxy random-pxcor random-pycor ]
reset-ticks
end
to go
ask one-of turtles [
create-link-with one-of other turtles
ask link-neighbors [
set breed cats
]
]
end
修改强>
我认为这可以满足您的需求:
breed [ males male ]
breed [ husbands husband ]
breed [ females female ]
breed [ wives wife ]
males-own [ mood ]
to setup
ca
create-males 5 [
set color green
setxy abs random-pxcor / 2 random-pycor
set mood "lonely"
]
create-females 5 [
set color white
setxy ( abs random-pxcor ) / -2 random-pycor
]
reset-ticks
end
to go
if any? females [
ask one-of males [
set breed husbands
create-link-with one-of females
ask link-neighbors [
set breed wives
]
]
]
end
但是,你可能想重新考虑让海龟切换品种,而是给它们一个turtles-own
布尔变量,如married?
,你可以用作一个标志。如果您想进行品种转换,请确保为相关品种创建的任何变量都相同 - 请注意,在上面的示例中,males
有一个mood
变量但是当它们发生变化时会丢失该信息繁殖到husbands
。