#Jose David Ortega Baracaldo
#070250112017
#Simulación
#--------------------------Programa Para el Modelo de Colas--------------------------------
set.seed(1) ##Figemos una semilla, por comodidad
n<-1
x <-c(1, 2, 3, 4,5) ## vector de la cantidad posible de articulos a comprar
lx<-length(x)
p=c(0.3, 0.3, 0.2, 0.1,0.1) ## Pesos por cada articulo a comprar
q <- rep(1/lx, lx)
Max<-max(p)/max(q)
X <- rep(0, n)
for (i in 1:n) {
for (j in 1:100) {
Y <- sample(1:lx, 1)
U <- runif(1)
if (U < p[Y]/((Max) * q[Y])) {
X[i] <- x[Y]
}
}
}
#X
#--------------------------------------------------------------------
#---------MODELO DE COLAS (Solución Del ejercicio plateado en clase)--------
X #va a ser el numero de articulos a comprar (Es necesario corres el programa anterior )
## [1] 3
t1<-120*X #tiempo dado en segundos por cada articulo
u1<-runif(1)
if(u1>=0.15){
tc<-sample(180:360,1) ##Generamos un numero aleatorio para la cantidad de tiempo en cola
t2<-20*X
print('Al entrar por la fila estandar, el tiempo en el establecimiento es de' )
t<-t1+tc+t2
}else{
t3<-15*X
print('Al entrar por la fila preferencial, el tiempo en el establecimiento es de' )
t<-t1+t3
}
## [1] "Al entrar por la fila estandar, el tiempo en el establecimiento es de"
T<-t/60
T ##Tiempo total En minutos ---Respuesta----
## [1] 11.93333
Corramoslo de nuevo:
#--------------------------Programa Para el Modelo de Colas--------------------------------
set.seed(12) ##Figemos una semilla, por comodidad
n<-1
x <-c(1, 2, 3, 4,5) ## vector de la cantidad posible de articulos a comprar
lx<-length(x)
p=c(0.3, 0.3, 0.2, 0.1,0.1) ## Pesos por cada articulo a comprar
q <- rep(1/lx, lx)
Max<-max(p)/max(q)
X <- rep(0, n)
for (i in 1:n) {
for (j in 1:100) {
Y <- sample(1:lx, 1)
U <- runif(1)
if (U < p[Y]/((Max) * q[Y])) {
X[i] <- x[Y]
}
}
}
#X
#--------------------------------------------------------------------
#---------MODELO DE COLAS (Solución Del ejercicio plateado en clase)--------
X #va a ser el numero de articulos a comprar (Es necesario corres el programa anterior )
## [1] 2
t1<-120*X #tiempo dado en segundos por cada articulo
u1<-runif(1)
if(u1>=0.15){
tc<-sample(180:360,1) ##Generamos un numero aleatorio para la cantidad de tiempo en cola
t2<-20*X
print('Al entrar por la fila estandar, el tiempo en el establecimiento es de' )
t<-t1+tc+t2
}else{
t3<-15*X
print('Al entrar por la fila preferencial, el tiempo en el establecimiento es de' )
t<-t1+t3
}
## [1] "Al entrar por la fila preferencial, el tiempo en el establecimiento es de"
T<-t/60
T ##Tiempo total En minutos ---Respuesta----
## [1] 4.5