垃圾清理问题

原创
2017/03/30 23:39
阅读数 12

#sample(c(0.25,0.5,0.75,1,1.25),1,prob=c(0.05,0.25,0.3,0.25,0.15))
#垃圾车每小时收集的垃圾服从的分布
#sample(c(15,30,45,60),1,prob=c(0.1,0.25,0.3,0.15)) 
#从垃圾填埋地到收集路线的时间和返回时间服从的分布
##初始化
zong <- 0   #垃圾站的垃圾总数
t <- 0      #垃圾车收集垃圾的时间
che <- 0    #垃圾车上的垃圾数
##循环 当不确定循环几次的时候用while
while(t<525){
  time <- sample(c(15,30,45,60),1,prob=c(0.1,0.25,0.3,0.15)) #收集一次垃圾路上所用时间服从的分布
  t <- t+time
  if(t>=540)break
  while(che<15){
    laji <- sample(c(0.25,0.5,0.75,1,1.25),1,prob=c(0.05,0.25,0.3,0.25,0.15)) #收集一次垃圾数量服从的分布
    che <- che+laji
    t <-t+15
    if(t>=540)break
  }
  zong <- zong+che
  che <- 0
  t <- t+time
}

##重复模拟
for(i in 1:100){
  ##初始化
  zong <- 0   #垃圾站的垃圾总数
  t <- 0      #垃圾车收集垃圾的时间
  che <- 0    #垃圾车上的垃圾数
  ##循环 当不确定循环几次的时候用while
  while(t<525){
    time <- sample(c(15,30,45,60),1,prob=c(0.1,0.25,0.3,0.15)) #收集一次垃圾路上所用时间服从的分布
    t <- t+time
    if(t>=540)break
    while(che<15){
      laji <- sample(c(0.25,0.5,0.75,1,1.25),1,prob=c(0.05,0.25,0.3,0.25,0.15)) #收集一次垃圾数量服从的分布
      che <- che+laji
      t <-t+15
      if(t>=540)break
    }
    zong <- zong+che
    che <- 0
    t <- t+time
  }
  zongday[i] <- zong
}

展开阅读全文
R
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部