我有一个模型,该模型具有连接一种代理的优先连接网络。他们应该根据自己拥有的一种财产[信任?]和邻居来相互影响。因此,如果有更多的邻居[信任? = true],他们也应该采用此属性。影响代码是这样设置的,并且可以在常规设置下工作:
to influence
; defines sexworkers-trust as the link to trusting sexworkers
let sexworkers-trust link-neighbors with [ trust? = true ]
; defines total-neighbors as the total link to neighbors
let total-neighbors link-neighbors
; if mistrusting sex workers are surrounded by more trusting neighbors, they are influenced and start trusting
if not trust? and random-float 1.0 < (neighbors-influence * (count sexworkers-trust / count total-neighbors ) ) [
set trust? true
set color green ]
end
此刻,我还有一个附加选项,即(如果设置为“ on”),每隔10个滴答声就会有一定数量的性工作者进入世界。它们也被添加到网络中。现在,以某种方式一旦打开该输入选项,仿真就会在一段时间后停止,并显示错误消息“被零除”。 下面是我的输入代码,也许那里有错误?
to enter
; creates 5 sex workers, randomly trusting/mistrusting
create-sexworkers 5 [
setxy random-xcor random-ycor
set trust? one-of [ true false ]
if trust? = TRUE [ set color green ]
if trust? = FALSE [ set color red ]
set birth-tick ticks ]
; asks trusting sex workers to create a link to one of the other trusting sex workers
ask sexworkers with [ trust? = true ]
[ create-link-with one-of other sexworkers with [ trust? = true ] ]
end
也通常信任吗? = true应该由变为绿色的性工作者表示,但输入代码也无法正确执行此操作,因为它们的属性似乎没有相应的颜色。 我可能不得不将其分为两个问题,但是我认为这与输入过程有关,然后又使影响过程崩溃。
非常感谢您!
答案 0 :(得分:1)
您有一些订购问题。如果节点不包含任何link-neighbors
,则链接集的总邻居将为空,并且您对可信比例的计算将产生除以零的误差。
这里没有足够的代码来给您完整的答案。但是我认为您只有信任的性工作者才能创建与其他信任的性工作者的链接,因此不信任的人没有链接,因此也没有链接邻居。