11
Tutorial 1: Taller de mecánica Enunciado Unos mecánicos llegan a una media de 10 por hora a recoger piezas de repuesto. Estas piezas se las da un dependiente pagado a $5/hora y que tarda como media 5 min en servir, Cada hora que tiene que esperar un mecánico (en el sistema) le cuesta al taller $10. Queremos saber si merece la pena contratar a un ayudante del dependiente, pagado con $4/hora, de forma que el tiempo medio de servicio se reduzca a 4 min Solución Analítica Tenemos dos opciones: Sin ayudante: 1/ 1 = 5 min = 1/12 h Con ayudante: 1/ 2 = 4 min = 1/15 h En ambos casos, = 10 clientes/h Opción 1 (sin ayudante): Por tanto, perdemos 5·($10/h) = $50/h Opción 2 (con ayudante): Por tanto, perdemos 2·($10/h) = $20/h debido a la espera de los mecánicos, Pero también perdemos $4/h debido al sueldo del ayudante, Por tanto, las pérdidas totales son $24/h Análisis final: En la opción 1 perdemos $50/h y en la opción 2 perdemos $24/h, con lo cual la más ventajosa es la opción 2. Solución en AnyLogic Iniciamos creando un nuevo proyecto y lo nombramos PLE Colas1 cambiando la unidad de tiempo por defecto a minutos (ver imagen). ρ 1 = 10 12 ;L 1 = ρ 1 1ρ 1 = 10 12 110 12 =5 mecánicos ρ 2 = 10 15 ;L 1 = ρ 1 1ρ 1 = 10 15 110 15 =2 mecánicos

Tutorial AnyLogic PLE: Colas 1

Embed Size (px)

Citation preview

Page 1: Tutorial AnyLogic PLE: Colas 1

Tutorial 1: Taller de mecánica

Enunciado

Unos mecánicos llegan a una media de 10 por hora a recoger piezas de repuesto. Estas piezas se las da un dependiente pagado a $5/hora y que tarda como media 5 min en servir, Cada hora que tiene que esperar un mecánico (en el sistema) le cuesta al taller $10. Queremos saber si merece la pena contratar a un ayudante del dependiente, pagado con $4/hora, de forma que el tiempo medio de servicio se reduzca a 4 min

Solución AnalíticaTenemos dos opciones: Sin ayudante: 1/1 = 5 min = 1/12 h Con ayudante: 1/2 = 4 min = 1/15 hEn ambos casos, = 10 clientes/h

Opción 1 (sin ayudante):

Por tanto, perdemos 5·($10/h) = $50/h

Opción 2 (con ayudante):

Por tanto, perdemos 2·($10/h) = $20/h debido a la espera de los mecánicos, Pero también perdemos $4/h debido al sueldo del ayudante, Por tanto, las pérdidas totales son $24/h

Análisis final: En la opción 1 perdemos $50/h y en la opción 2 perdemos $24/h, con lo cual la más ventajosa es la opción 2.

Solución en AnyLogicIniciamos creando un nuevo proyecto y lo nombramos PLE Colas1 cambiando la unidad de tiempo por defecto a minutos (ver imagen).

ρ1=1012; L1=

ρ11− ρ1

=

1012

1−1012

=5 mecánicos

ρ2=1015; L1=

ρ11− ρ1

=

1015

1−1015

=2 mecánicos

Page 2: Tutorial AnyLogic PLE: Colas 1

A continuación agregamos los elementos Source, Queue, Delay y Sink de la librería de procesos y los conectamos en secuencia. Adicionalmente agregamos una variable de tipo doble y la llamamos averageL, un parámetro de tipo doble llamado tDelay, y una estadística que llamaremos L como se muestra en la imagen inferior.

Cambiamos las propiedades de Source para actualizar la estadística cada que un nuevo agente llegue al sistema haciendo que la estadística capture la cantidad total de unidades tanto en cola como en servicio.

Page 3: Tutorial AnyLogic PLE: Colas 1

Por otra parte cambiamos las propiedades del objeto Delay para ajustar el tiempo de servicio, lo que nos permite comparar entre la opción 1 y la opción 2 (sin y con ayudante). Este parámetro será transferido desde la pantalla de inicio.

En la pantalla de simulación principal incluimos un texto donde transcribimos el enunciado, un deslizador (slider) que controla el tiempo de atención y una variable tipo doble que conectaremos al slider. La imagen inferior muestra todos los elementos de esta pantalla.

Page 4: Tutorial AnyLogic PLE: Colas 1

Así mismo la imagen siguiente muestra las propiedades del slider donde se vincula con la variable tDelay y se le asignan límite inferior y superior.

En cuanto a las propiedades de la simulación, se debe vincular la variable local tDelay con el parámetro principal del mismo nombre. El tiempo de simulación será 50,000 minutos (poco menos de 35 días) a la máxima velocidad posible y se indica que el experimento es aleatorio no repetible (ver imagen inferior)

Page 5: Tutorial AnyLogic PLE: Colas 1

Cuando ejecutamos la simulación debemos observar una pantalla como la presentada en la parte inferior.

Page 6: Tutorial AnyLogic PLE: Colas 1

Al finalizar la simulación obtendremos el valor promedio de unidades en el taller en el promedio del estadístico L. Esto sin embargo es el resultado de una única simulación.

Page 7: Tutorial AnyLogic PLE: Colas 1

Para obtener resultados más confiables el usuario tiene dos posibilidades, o bien ejecuta muchas veces la misma simulación y toma nota de los resultados para luego promediarlos, o puede crear un experimento adicional donde se realicen múltiples repeticiones del mismo experimento con diferentes semillas aleatorias. Esto se hace mediante la variación de parámetros (File – New – Experiment, seleccionando Parameters Variation como se muestra en la imagen inferior)

Page 8: Tutorial AnyLogic PLE: Colas 1

En él crearemos un experimento de tipo libre (free form) en donde controlaremos la variable tDelay mediante un combo (ver imagen siguiente)

Page 9: Tutorial AnyLogic PLE: Colas 1

El combo actualiza el valor de la variable tAtencion con valores de 4 o 5 (ver propiedades en la imagen siguiente)

Page 10: Tutorial AnyLogic PLE: Colas 1

Las propiedades del experimento incluyen 1,000 repeticiones, aleatoriedad y no repeticiones (ver siguientes imágenes)

Finalmente, actualizamos las acciones personalizadas en Java para resetear la estadística antes de cada corrida de simulación y transferir la variable antes de iniciar. Al finalizar el experimento leemos el valor del estadístico L y lo agregamos al estadístico local, lo que nos permite evaluar el valor medio de la cantidad de agentes en el sistema de todos los 1,000 experimentos.

Page 11: Tutorial AnyLogic PLE: Colas 1

Luego de ejecutar la simulación podemos conocer el valor del estadístico como se muestra en las dos imágenes inferiores.

En esta ocasión encontramos que los resultados por simulación son similares a los resultados obtenidos de manera analítica, con 5 y 2 mecánicos para las opciones sin y con ayudante respectivamente.