【发布时间】:2019-12-13 18:04:34
【问题描述】:
我正在尝试建模一个“在线论坛”,其中模型以 2 个连接的代理开始,这些代理属于 2 个品种(A 代理和 B 代理)。
- 每次迭代都会创建 2 个品种之一的代理。创建了哪个品种的节点; A-agent vs. B-agent 由概率决定(见代码)。
- 然后,新创建的代理(1 个 A 代理或 B 代理)会根据概率连接到 A 代理或 B 代理之一。
如何根据选择概率使新创建的代理附加到两种代理中的一种?
- 如果新创建的节点是 A 代理 = 58% 的机会连接到 A 代理之一,42% 的机会连接到 B 代理之一?
- 如果新创建的节点是 B 代理 = 56% 的概率连接到 A 代理,44% 的概率连接到 B 代理
这是我到目前为止的代码,直到第 1 点。
breed [A-agents A-agent]
breed [B-agents B-agent]
to setup
clear-all
reset-ticks
create-A-agents 1
[ set shape "triangle"
set size 1
set color blue
setxy random-xcor random-ycor
]
create-B-agents 1
[ set shape "circle"
set size 1
set color red
setxy random-xcor random-ycor
]
ask B-agents [create-links-with A-agents [set color green]]
tick
end
to go ;; create a new node based on the emprical user distribution of A-agents/B-agents
let p random-float 100 ;; create a random number between 1-100
if (p >= 97) [create-A-agents 1
[ set shape "triangle"
set size 1
set color blue
setxy random-xcor random-ycor]]
if (p < 97) [create-B-agents 1
[ set shape "circle"
set size 1
set color red
setxy random-xcor random-ycor
]]
tick
end
【问题讨论】:
标签: netlogo probability