我试图使用R&#39的软件包Simmer来模拟排队网络。但是,我在主轨道中加入循环时遇到了麻烦。一个简单的单节点队列代码如下:
react-error-overlay
在运行轨迹功能之后,它向我显示"错误输入(。在i中)1:100:4参数传递给'对于'这需要3"。
实际网络更复杂,需要一个不同节点通信的循环。例如,我希望节点1流向节点2和3.节点2流向节点1和3.节点3流向节点1和2.唯一可能的出口是节点3.
提前致谢。
答案 0 :(得分:0)
rollback
活动就是为了这个目的:
library(simmer)
to_queue_1 <- trajectory() %>%
seize("nurse", 1) %>%
timeout(1) %>%
release("nurse", 1) %>%
rollback(3, 100)
env <- simmer() %>%
add_resource("nurse",1) %>%
add_generator("arrival1_", to_queue_1, function() rexp(1, 1), mon=2) %>%
run(200)
其中3
是要回滚的活动数,100
是重复次数。