Netlogo:接种不同品种的疫苗

时间:2014-03-03 12:28:45

标签: simulation netlogo agent-based-modeling

我的模型通过两个不同品种的成人和儿童来代表流感的传播。

我想做的是为成人和儿童添加单独的疫苗接种,允许我从界面中指定两个疫苗接种值,使两个品种的乌龟接种疫苗的机会

我目前的代码如下,我希望能够做的是使用接口值成人接种疫苗接种该品种中一定比例的海龟。

ask turtles with [ adult? = true ]
   [
   if (adult-vaccination = 1) 
   [
    reset-node
    set exposed? false
    set susceptible? false
    set temp-infected? false
    show-turtle
    set color pink
    ]
    ]

1 个答案:

答案 0 :(得分:2)

如果adult-vaccination是从0到1的概率,您可以概率性接种成人,如下:

ask turtles with [ adult? ] [
  if random-float 1 < adult-vaccination [
    ... ; vaccination code here
  ]
]

如果您希望adult-vaccination实际确定接种疫苗的人口比例,您可以这样做:

let adults turtles with [ adult? ]
ask n-of round (adult-vaccination * count adults) adults [
  ...; vaccination code here
]

其他一些花絮:

    如果variable = true始终为variablevariable,则
  • true将与false相同。
  • 这似乎是使用breeds的绝佳机会。您将拥有adults品种和children品种。然后,您可以执行ask adults [ do stuff ]之类的操作,并为成人和儿童提供不同的变量等。