Foro de debate

Simulacion en R

Simulacion en R

de Malvis Valenzuela -
Número de respuestas: 6

 

Hola tengo este pequeno programa pero tengo que hacer que los camiones vayan en distintas direcciones y no se como hacerlo alguien que ayude o me dirija para continuar haciendo el programa . Mi correo es, los comentarios son bienvenidos.  Es un programa que debe hacer una recollecion de materiales en un area determinada , donde la demanda es aleatoria y la capacidad del camion y la cantidad de camiones , las toneladas y las horas son los parametros de cambio . 

Muchas Gracias .

simulation <- function(n_trucks,capacity,trash_tons,hours){


# capacity of the truck
c_truck <- runif(n_trucks,capacity[1],capacity[2])
# trash of the block
ton_garbage <- rnorm(1,trash_tons[1],trash_tons[2])
# travel number
travelnumber <- ceiling(ton_garbage/sum(c_truck))
t_recolection <- 0
t_going_l <- 0
t_returning<- 0
for (i in 1:travelnumber) {
t_recolection[i] <- rnorm(n = 1,1,0.5)
t_going_l[i] <- rnorm(n = 1,1,0.05)
t_returning[i] <- rnorm(n = 1,1,0.05)
x <- cumsum(c(t_recolection,t_going_l,t_returning))
if (x[i*3]>=hours)break

}

(Editado por Manuel Muñoz Márquez - envío original sábado, 30 de julio de 2022, 06:57)

En respuesta a Malvis Valenzuela

Re: Simulacion en R

de Manuel Muñoz Márquez -

Buenas, Malvis:

Dejar tu correo expuesto en un lugar público de internet se presta, al menos, a que te lo inunden de spam. Como administrador si quieres lo puedo ocultar.

Desde la plataforma cualquiera te puede escribir y responderte en el foro sin necesidad de tu correo.

No tengo muy claro a qué te refieres cuando dices que los camiones vayan en diferentes direcciones.

Tampoco entiendo qué sentido tiene que la recolección se genere aleatoriamente de forma independiente a la basura a recoger.

Tal vez podrías poner un ejemplo concreto con lo que esperas obtener.

Un saludo.

En respuesta a Manuel Muñoz Márquez

Re: Simulacion en R

de Malvis Valenzuela -
Hola, muchas gracias, la verdad es primera vez que entro en un foro de esta clase desconosco muchas cosas, si, por favor elimine mi correo de alli no quiero que me llenen de spam el correo.
Con respecto a la di reccion de los camiones, ellos pueden entrar al area por diferentes calles y empezar la recoleccio digamos del centro hacia afuera o desde un extremo al otro etc . Como programar que el camion entre en un area , lo hago como si fueran nodos o calles ?
Le pongo regla de si hay mas basura empiezan en nodo1 o calle 1? nose realmente como hacer
Gracias por su respuesta'
En respuesta a Malvis Valenzuela

Re: Simulacion en R

de Manuel Muñoz Márquez -
Buenas, Malvis:

Si lo que estás haciendo es un ejercicio de clase o similar, en el enunciado te habrán dado algo más de información. Si la facilitas nos pondrás más fácil ayudarte.
 
No sé en el lugar donde estás, aquí los camiones hacen rutas fijas pues, en la mayoría de los casos, los contenedores no están sensorizados y, por tanto, no es posible saber de antemano qué cantidad de residuo tienen.

Si se trata de algo que quieres hacer para la empresa donde trabajas, el problema que planteas no es trivial y no tiene que ver con R. En este caso te recomiendo que consultes bibliografía sobre problemas de rutas para la recogida de residuos. Es un problema muy estudiado en la literatura científica.

Otra opción es que colabores, o tu empresa colabore, con alguien o algún grupo de investigación universitario en estos temas.

Un saludo.
En respuesta a Manuel Muñoz Márquez

Re: Simulacion en R

de Malvis Valenzuela -
enunciado :
Para transportar la bausra desde un lugar llamado el Chorrillo se utilizan dos camiones y dos retroexcavadores . Cada camion es cargado por uno de los dos retroexcavadoreas . Luego de ser cargado se verifica si el camion tiene capacidad para seguir cargando. Se sabe que la capacidad del camion es de 4 a 6 toneladas , si el camion tiene capacidad va al siguiente bloque pero si no tiene capacidad va al vertedero a dump la basura. Luego de tirar la basura en el vertedero y regresa al Chorrillo para continuar colectando basura o para terminar su turno. El turno de los camiones es de ocho horas . La condicion de finalizacion del trabajo es si el tiempo es 8 horas o si la cantidad de basura es cero.
El chorrillo consta de 24 bloques y cada bloque va a tener una demanda de basura con una distribucion normal de media 10 y desviacion estandar de minimo 0.8 y maximo 1.33.
Pretendo simular este sistema y aumentar la cantidad de camiones para ver cual es la cantidad de camiones optimos para una recoleccion mas eficiente , ahora bien los camiones no pueden entrar a los bloques en una sola direccion por que son calles , las calles tiene numero , una matriz de 24*24 y de allli genero una distribucion normal usando un for para todas los bloques, mi pregunta es como hago que el camion uno vaya en direccion de la fila 1y siga a la 21 etc .... Quedo a la espera de sus comentaris gracias .
Estare trabajando en el programa.
En respuesta a Malvis Valenzuela

Re: Simulacion en R

de Manuel Muñoz Márquez -
Buenas, Malvis:

Por un lado está el tema de la simulación, si nunca has estudiado simulación y quieres abordar el problema en profundidad te va a suponer mucho esfuerzo. Para que te hagas una idea podría ser objeto de una asignatura cuatrimestral de cualquier universidad o máster.

Por otro lado, el nivel de detalle en la simulación dependerá del esfuerzo que estés dispuesta a dedicar. Por ejemplo, es necesario incluir mapas de carreteras o no, es necesario incluir horas máximas de los conductores o no, el repostaje de combustible debe tenerse en cuenta, se hace en ruta o en el depósito, etc.

Otra cuestión muy distinta se refiere al problema en sí mismo, cuando hablas de "optimizar el número de camiones" tienes que establecer de forma clara cual es el objetivo. Por ejemplo, se pretende que el costo de operación sea el mínimo posible, o por el contrario se desea que se recoja en el menor tiempo posible, o que se recoja en el menor tiempo posible sujeto a un presupuesto dado, ...

Un saludo.