【问题标题】:how to write loop of generators in Simmer environment如何在 Simmer 环境中编写生成器循环
【发布时间】:2018-07-20 20:49:41
【问题描述】:

在我的排队应用程序中,我有 c 类具有不同服务费率的客户。 c 可以是 5、10、15、...,并且可能是一个非常大的数字。因此,我需要在 simmer 环境 c 次中应用“add_generator”。这个想法在代码中。

env <- lapply(1:100, function(i) { 
simmer("SuperDuperSim") %>%
add_resource("server",capacity=100,queue_size=0) 
%>%
for(j in 1:c){
  add_generator(names[j], class_j_trajectory, 
  at(0)) 
}%>%
run(until=100)
})

内部的 For 循环不起作用。但是写下每个班级的轨迹太乏味了。有没有任何有效的方法来添加许多生成器?谢谢。

【问题讨论】:

    标签: r loops queue simulation


    【解决方案1】:

    for 循环无法通过管道传输。使用辅助变量如下:

    envs <- lapply(1:100, function(i) { 
      env <- simmer() %>%
        add_resource("server",capacity=100,queue_size=0)
    
      for(j in 1:c) env %>%
        add_generator(names[j], class_j_trajectory, at(0))
    
      env %>% run(until=100)
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-14
      • 1970-01-01
      • 1970-01-01
      • 2012-07-17
      • 2016-11-18
      • 1970-01-01
      • 1970-01-01
      • 2016-07-19
      相关资源
      最近更新 更多