Crear el flujo de proceso del modelo
Last updated
Last updated
AnyLogic tiene varias paletas con bloques de comandos que se arrastran al área central de modelado.
Como se describió al principio, en esta primera etapa del ejercicio, construiremos una cola M/M/1, compuesta básicamente por:
Un proceso de llegadas de clientes, con intervalos entre llegadas sucesivas distribuidas exponencialmente y un valor promedio de 2.0 clientes/min;
Un proceso de uso de ATM, con una duración promedio de 0.4 min/cliente y distribución exponencial, equivalente a un cargo por servicio de 2.5 clientes/min (= 1/0.4);
Un solo servidor (solo 1 cajero automático, por ejemplo).
El bloque source es responsable de generar entidades (o, en la nomenclatura de AnyLogic, generar agentes) en un flujo de proceso. Haga clic, mantenga presionado y arrastre el bloque de origen, desde la paleta, hasta el centro de la pantalla. [Observe, en el área de Properties a la derecha, cómo cambia el menú sensible].
La cola M/M/1 tiene un solo servidor, por lo que haremos un flujo muy simple con elementos de AnyLogic:
Un bloque de source para generar agentes;
Un bloque de queue que representa la cola;
Un bloque de delay que representa el proceso de servicio;
Un bloque de sink donde termina el flujo o proceso del agente creado en el bloque source.
El "arrastrar y soltar" de AnyLogic es realmente fácil: si mueve el ratón más cerca del bloque, ya crea el conector que representa la conexión lógica entre los bloques.
Pero si elimina automáticamente o no crea un conector, haga doble clic en un extremo verde del bloque de origen y únase al otro extremo verde del bloque de destino.
Una vez que se ha creado el flujo del proceso, se establecen las propiedades de cada bloque. Haga clic en el bloque de origen:
Cambie el nombre del bloque a algo como: llegadas;
El proceso de llegada se definirá mediante una Rate o Tasa (= intervalos entre llegadas distribuidos exponencialmente, una distribución de Poisson);
Para este ejemplo, asumimos que la tasa de llegada de clientes es de 2.0 clientes/min.
Al hacer clic en el bloque queue, notará que la capacidad de la cola está limitada a 100. Sin embargo, por definición, la cola M/M/1 tiene una capacidad ilimitada. Por lo tanto, debemos hacer clic en Maximum capacity en las propiedades del bloque queue, de modo que la cola tenga una capacidad ilimitada:
Importante: Vviene predeterminado que las colas AnyLogic nunca se crean con capacidad infinita, sino siempre con una capacidad limitada en 100 agentes. Si su valor no se cambia a la capacidad máxima y la cola excede su capacidad durante la simulación, AnyLogic presentará un mensaje de error.
Para el bloque delay, responsable de ejecutar el proceso de servicio, consideraremos que la tasa de servicio promedio es de 2.5 clientes/min, con distribución exponencial.
Para facilitar el proceso de completar distribuciones probabilísticas, AnyLogic tiene una herramienta específica para la selección de distribuciones, Elegir distribuciones de probabilidad:
Seleccione el bloque delay y luego el campo Delay time;
Cuando un campo que permite recibir distribuciones de probabilidad se abre, se activa un botón en la barra de comandos de AnyLogic (un “J” con una varita mágica):
Haga clic en el botón para mostrar la ventana Choose Probability Distribution...:
Muchas distribuciones, ¿verdad?
Importante: AnyLogic considera el parámetro lambda o la tasa de ocurrencia del fenómeno de distribución (como suelen hacer los libros de Estadística). Por esta razón, debemos informar a AnyLogic la tasa de servicio promedio de 2.5 clientes/min (que es básicamente el inverso del tiempo promedio de servicio, si lo desea, puede escribir directamente así: 1/0.4).
Listo? Listo!
¡Simula!
Sí, ahora está ejecutando su primer modelo en AnyLogic usando el botón verde en la barra de menú superior:
Tenga en cuenta que AnyLogic ejecutó su modelo como una aplicación Java y esto es importante: AnyLogic es un generador de aplicaciones de simulación.
En la versión Professional, y solo en ella, existe la opción de exportar esta aplicación, generando un archivo ejecutable independiente de AnyLogic, que puede distribuir a terceros o ejecutar en máquinas que ni siquiera tienen AnyLogic instalado.
Cuando haces clic en el botón Run, ocurre la magia. Tenga en cuenta que el bloque de la queue se llena de azul oscuro a medida que más clientes esperan en la fila.
Haga clic en los bloques azules, están llenos de sorpresas:
Si simula durante mucho tiempo, en algún momento el límite de 50,000 agentes de la versión PLE se rompe y AnyLogic presentará una pantalla en blanco, informando el error.
Para evitar este tipo de error (no es que suceda mucho, ya que 50,000 agentes son muchos), podemos configurar mejor nuestro Experimento de simulación.
Usando la pantalla izquierda, seleccione la pestaña Projects. Verá un navegador con iconos apilados, como carpetas: los botones rojos (el símbolo es un muñeco) representan agentes; y el icono azul con una x blanca, que representa un Experimento.